在 Snowflake Data Clean Rooms 中管理 Cross-Cloud Auto-Fulfillment¶
关于 Cross-Cloud Auto-Fulfillment¶
在默认的 Clean Room 环境中,Clean Room 只能与同一云区域中的账户共享。也就是说,提供商和使用者必须位于同一云区域中。
如果 Snowflake 客户的账户与您的账户分别位于不同的区域,您想要与其协作,您必须为 Clean Room 环境启用 Cross-Cloud Auto-Fulfillment。在 Clean Room 管理员作为协作者在其他区域添加账户 之前,具有 ACCOUNTADMIN 角色的 Snowflake 用户必须启用 Cross-Cloud Auto-Fulfillment。
您可以通过运行 SELECT CURRENT_REGION();
确定您自己的云区域
重要
如果您从其他云区域添加使用者,并且没有为您的账户启用 Cross-Cloud Auto-Fulfillment,则请求将成功,但对 create_or_update_cleanroom_listing
的调用将失败。在移除其他区域中的所有用户之前,您将无法更新 Clean Room,如下所示:
call samooha_by_snowflake_local_db.provider.add_consumers(
$cleanroom_name, 'ACCOUNT_IN_OTHER_REGION', 'ORGNAME.ACCOUNTNAME');
call samooha_by_snowflake_local_db.provider.create_or_update_cleanroom_listing($cleanroom_name);
-- **FAILURE**: Cannot enable LAF for this cleanroom.
-- Please enable LAF for Samooha on the account first through
-- the Samooha web application.
call samooha_by_snowflake_local_db.provider.remove_consumers(
$cleanroom_name, 'ACCOUNT_IN_OTHER_REGION');
samooha_by_snowflake_local_db.provider.create_or_update_cleanroom_listing($cleanroom_name);
-- Success
启用 Cross-Cloud Auto-Fulfillment¶
您必须是 Snowflake 管理员才能管理您的 Cross-Cloud Auto-Fulfillment。
要允许来自不同区域的协作者,请执行以下操作:
输入电子邮件地址,然后选择 Continue。
输入密码。
如果您与多个 Clean Room 环境关联,请选择您正在配置的 Snowflake 账户。
选择 Admin > Snowflake Admin。
选择 Login to Snowflake,并作为具有 ACCOUNTADMIN 角色的 Snowflake 用户进行身份验证。
开启 Cross-Cloud Auto-Fulfillment。
与跨区域协作相关的成本¶
如果协作者在不同的区域,则需要支付额外费用。有关这些费用的产生方式的更多信息,请参阅 了解 Cross-Cloud Auto-Fulfillment 费用。
对跨区域协作的限制¶
对跨区域协作的限制包括以下方面:
协作者必须共享同一个 Web 应用程序托管区域。例如,如果一个账户的 Web 应用程序托管区域是 Amazon Web Services:US 东部(弗吉尼亚北部),而另一个账户的 Web 托管区域是 Amazon Web Services:亚太地区(孟买),则两个 Snowflake 客户无法协作。要确定两个协作者是否共用同一个 Web 应用程序托管区域,请参阅 Web 应用程序托管。
提供商不能在 Clean Room 中使用差分隐私。
协作者无法在 Clean Room 中关联外部表和 Iceberg 表。
提供商无法查看从 Clean Room 使用者发送的请求日志。
使用者无法运行多提供商分析。
协作者不能使用掩码策略或行访问策略。