Snowflake Data Clean Rooms:管理员任务¶
本主题介绍 Snowflake Data Clean Room 管理员的任务。有关首次实施清洁环境的信息,请参阅 开始使用 Snowflake Data Clean Rooms。
添加协作者¶
具有管理员角色的 Clean Room 用户必须先将某人定义为协作者,之后 其他用户才能与该协作者共享 Clean Room。
备注
如果 Snowflake 客户的账户所在区域与 Snowflake 账户不同,则您的账户管理员必须先启用 Cross-Cloud Auto-Fulfillment,然后您才能将客户添加为协作者。包括在其他区域中与客户协作的限制有关的更多信息,请参阅 实现与不同区域的使用者的协作。
要在 Clean Room 环境中添加某人为协作者,请执行以下步骤:
以 Clean Room 管理员身份登录。此用户无需在 Snowflake 中具有 ACCOUNTADMIN 角色。
在左侧导航栏中,选择 Collaborators。
执行下列操作之一:
如果协作者拥有 Snowflake 账户,请选择 Snowflake Partners » + Snowflake Partner。系统会提示您输入协作者的 Snowflake 账户的详细信息。
如果协作者不是 Snowflake 客户,请选择 Managed Accounts 选项卡,为其创建 Clean Room 托管账户。
添加用户¶
添加 Clean Room 用户的过程取决于他们是利用 Web 应用程序还是开发者 APIs 来使用 Snowflake Data Clean Room。
- Web 应用程序:
要允许用户访问 Web 应用程序,请执行以下步骤:
以 Clean Room 管理员身份登录。此用户无需在 Snowflake 中具有 ACCOUNTADMIN 角色。
选择 User Management » User Management。
选择 + Users。
输入新 Clean Room 用户的电子邮件地址。
选择新用户的角色。
新用户会收到一封电子邮件,其中包含了加入 Clean Room 的链接。
- 开发者 APIs:
要允许用户利用 开发者 APIs 以编程方式使用 Clean Room,请执行以下步骤:
登录到与 Clean Room 环境关联的 Snowflake 账户,即安装 Snowflake Native App 的地方。
打开工作表,然后使用 ACCOUNTADMIN ROLE 将 SAMOOHA_APP_ROLE 角色分配给用户。
例如,要允许用户
joe
使用开发者 APIs,请执行以下代码:USE ROLE accountadmin; GRANT ROLE samooha_app_role TO USER joe;
添加仓库选项¶
任何具有 SAMOOHA_APP_ROLE 角色使用和操作权限的仓库都可以用于运行分析。要添加可以被 Clean Room 用户用于执行分析的仓库,请创建一个仓库,然后将其权限授予 SAMOOHA_APP_ROLE。
例如,要添加一个可以用于运行分析的仓库 my_big_warehouse
,请通过工作表执行以下命令:
USE ROLE ACCOUNTADMIN;
CREATE WAREHOUSE my_big_warehouse WITH WAREHOUSE_SIZE = X5LARGE;
GRANT USAGE, OPERATE ON WAREHOUSE my_big_warehouse TO ROLE SAMOOHA_APP_ROLE;
监控 Web 应用程序活动¶
管理员可以监控 Snowflake 账户中的查询历史记录,以跟踪用户在 Web 应用程序中执行的操作。您可以识别与 Web 应用程序中的活动对应的查询历史记录条目,因为 user_name
的值是 配置 Snowflake 账户 时创建的服务账户用户名称。
您可以使用 user_email
查询标签来识别哪个 Clean Room 用户执行了操作。
要访问 Clean Room 环境的查询历史记录,请根据是要使用 SQL 还是 Snowsight 来执行以下过程之一:
- Snowsight:
以具有 ACCOUNTADMIN 角色的用户身份登录与您的 Clean Room 环境关联的 Snowflake 账户。
选择 Monitoring » Query History。
使用 User 筛选器选择与 Clean Room 环境关联的服务账户用户。
- SQL:
对共享的 SNOWFLAKE 数据库的 ACCOUNT_USAGE 架构中的 QUERY_HISTORY 视图 执行查询。
例如,如果要跟踪用户
joe@company.com
的 Web 应用程序活动,请执行以下代码:SELECT *, TRY_PARSE_JSON(query_tag) AS query_tag_details FROM snowflake.account_usage.query_history WHERE query_tag_details IS NOT NULL AND query_tag_details:request_type = 'DCR' AND query_tag_details:user_email = 'joe@company.com';
监控由提供商运行的分析¶
提供者运行的分析是指提供者创建并共享 Clean Room 的过程,在使用者链接他们的数据后,在 Clean Room 中进行分析。这些分析在使用者的账户中运行,而不是在提供者的账户中。本节描述了使用者如何在 Clean Room 中跟踪由提供者分析执行的查询。
Snowflake Data Clean Rooms 为每个执行的查询分配一个查询标签,以进行提供者运行的分析。该查询标签的形式为 cleanroom_UUID_provider_account_locator
。消费者可以通过在其账户的查询历史中搜索查询标签,检索与提供商运行的分析相关的所有查询。
要检索查询,首先获取 Clean Room 的 UUID,然后搜索查询标签。在以下代码中,将 cleanroom_name
和 provider_account_locator
替换为适当的值。
-- Retrieve clean room UUID
SELECT cleanroom_id FROM samooha_by_snowflake_local_db.public.cleanroom_record
WHERE cleanroom_name = '<cleanroom_name>';
-- Retrieve queries with provider-run query tag
SELECT * FROM snowflake.account_usage.query_history
WHERE query_tag = cleanroom_id || '<provider_account_locator>;
您还可以使用 Snowsight,在使用 SQL 检索 Clean Room UUID 后,通过适当的查询标签过滤查询历史。
自定义可用连接器¶
您可以使用连接器将 Clean Room 环境与生态系统合作伙伴集成到一起。作为提供商的 Clean Room 管理员,您可以自定义 Clean Room 环境,以限制哪些连接器作为 Clean Room 用户的选项出现。例如,如果您有一个首选的激活合作伙伴,您可以配置 Clean Room 环境,使得当使用者在 Clean Room 中激活分析结果时,该合作伙伴是唯一的选择。
备注
您的自定义仅适用于新的 Clean Room。
要在 Clean Room 中控制可用的连接器:
在左侧导航栏中,选择 Admin » Profile & Features。
可选:要自定义激活连接器,请执行以下步骤:
在 Activation 磁贴中,选择 Edit。
选择您想要显示的激活选项,然后选择 Save。
可选:要自定义身份和数据提供程序连接器,请按照以下步骤操作:
在 Identity & Data Provider 磁贴中,选择 Edit。
选择您想要显示的身份选项,然后选择 Save。
给 Clean Room 标明品牌¶
您可以为 Clean Room 环境配置简介,以便创建的每个 Clean Room 都带有您的徽标和公司名称。要为您的公司定义徽标和名称,请完成以下步骤:
在左侧导航栏中,选择 Admin » Profile & Features。
在 Company profile 部分中,执行以下操作:
上传公司的徽标,格式为 JPG 或 PNG。这个标志将出现在创建的每个 Clean Room 上。
编辑 Company Name,定义您希望在环境中创建的 Clean Room 上显示的名称。
启用单点登录 (SSO)¶
您的 Clean Room 环境可以进行配置,以便用户通过单点登录 (SSO) 使用自己的身份提供者进行身份验证。要启用 SSO,请联系 Snowflake 支持部门。