卸载 Snowflake Data Clean Rooms

本主题介绍管理员卸载 Snowflake Data Clean Rooms 时必须完成的任务。

重要

该程序可完全卸载整个环境,而不仅仅是单个 Clean Room。

要卸载,请执行以下步骤:

  1. 删除您作为提供商创建的所有 Clean Room。其中包括 Web 应用程序和开发人员 API Clean Room。

  2. 使用 Web 应用程序查找与您作为使用者加入的 Clean Room 相关的磁贴,然后离开 Clean Room。

  3. 使用 consumer.uninstall_cleanroom 命令卸载作为使用者安装的开发人员 API Clean Room。

  4. 联系您的 Snowflake 代表以检索账户元数据。

  5. 收到指示后,运行以下清理脚本:

备注

在运行此脚本之前,请确保在 Web 应用程序中保留 Clean Room(使用者端)并删除 Clean Room(提供商端)。使用者数据库由应用程序自动删除(最后一步)。非常仔细地运行所有 SELECT 语句。

USE ROLE ACCOUNTADMIN;
USE WAREHOUSE APP_WH;

-- Drop listings

SHOW LISTINGS;
SELECT concat('alter listing ', "name", ' unpublish; drop listing ', "name", ';') FROM TABLE(result_scan(last_query_id()));

-- Drop shares

SHOW SHARES;
SELECT concat('drop share ', "name", ';') FROM TABLE(result_scan(last_query_id())) WHERE "kind" = 'OUTBOUND';

-- These 3 shares have to be dropped manually:

DROP SHARE SAMOOHA_INTERNAL_GOVERNANCE_SUMMARY_SHARE_NAV2;
DROP SHARE SAMOOHA_INTERNAL_LOGS_SHARE_NAV2;
DROP SHARE SAMOOHA_INTERNAL_PROVIDER_METADATA_NAV2;

-- Drop applications

SHOW APPLICATIONS;
SELECT concat('drop application ', "name", ' cascade;') FROM TABLE(result_scan(last_query_id())) WHERE "name" LIKE 'SAMOOHA_CLEANROOM_APP_%';

-- Drop application packages

SHOW APPLICATION PACKAGES;
SELECT concat('drop application package ', "name", ' cascade;') FROM TABLE(result_scan(last_query_id())) WHERE "name" LIKE 'SAMOOHA_CLEANROOM_%';

-- Drop databases

SHOW DATABASES;
SELECT concat('drop database ', "name", ';') FROM TABLE(result_scan(last_query_id()))
WHERE "name" = 'SAMOOHA_SAMPLE_DATABASE' OR
  "name" LIKE 'SAMOOHA_CLEANROOM_%' OR
  "name" = 'SAMOOHA_BY_SNOWFLAKE_LOCAL_DB' OR
  "name" LIKE 'SAMOOHA_INTERNAL_GOVERNANCE_%' AND NOT
  startswith("name", 'SAMOOHA_CLEANROOM_CONSUMER_');


-- Finally drop the Snowflake native app

DROP APPLICATION SAMOOHA_BY_SNOWFLAKE CASCADE;
Copy
语言: 中文