教程¶
用例:提供商在内部 Marketplace 共享列表。然后与使用者重新共享。¶
在此用例中,提供商在内部 Marketplace 共享可重新共享的列表。使用者 A 检索列表,然后与使用者 B 重新共享。
备注
在 Snowflake Marketplace 上重新共享列表和重新共享私密列表的步骤与此用例中提供的步骤类似。
第 1 步:提供商在内部 Marketplace 创建可重新共享的列表¶
备注
要启用跨区域重新共享,提供商必须在他们的表上启用 change_tracking。这只能通过使用 CREATE TABLE 或 ALTER TABLE 以编程方式完成。有关更多信息,请参阅 启用更改跟踪。
按照以下步骤在 Snowsight 的内部 Marketplace 上 创建组织列表。
此用例创建一个名为 Daily Revenue Reshare 的列表。该列表包含一个名为 daily_revenue_table 的表。
查看右下角的 Resharing 部分。
默认情况下,可以重新共享列表。
将使用者 A 添加到列表的定位中,然后发布列表。
列表发布后,可在组织的内部 Marketplace 中找到。
第 2 步:使用者 A 检索并重新共享列表¶
在此示例中,使用者 A 从内部 Marketplace 检索共享列表,然后与二级使用者(使用者 B)重新共享。
验证您是否可以查看列表¶
以使用者 A 的身份登录 Snowsight。
在导航菜单中,选择 Catalog » Internal Marketplace。
验证共享列表是否可用。
在此用例中,共享列表被命名为 Daily Revenue Reshare。
在 Internal Marketplace 页面,选择共享列表,然后复制列表 ULL。
创建视图时您将包括此 ULL。
在此用例中,复制的 ULL 是 ORGDATACLOUD$INTERNAL$DAILY_REVENUE_RESHARE。
创建新视图¶
在新的或现有数据库中创建引用共享列表中的对象的视图。
该视图引用列表,如以下示例所示。包括您之前复制的列表 ULL。ULL 包括列表名称、架构和表名称。此视图将成为 传出 视图。
CREATE SECURE VIEW drt_secure_view
COMMENT = '<comment>'
AS SELECT * FROM ORGDATACLOUD$INTERNAL$DAILY_REVENUE_RESHARE.public.daily_revenue_table;
新视图将在数据库的公共视图中列出。
与使用者 B 重新共享列表¶
要与使用者 B 重新共享列表,请执行以下步骤:
在导航菜单中,选择 Marketplace » Provider Studio。
在 Listings 页面上,选择 Create listing » Specified consumer。
为列表指定一个名称。
在本示例中,列表名为 Resharing Daily Revenue Table。
选择 Add data product。
选择您在上面创建的安全视图。
在此用例中,安全视图被命名为 DRT_SECURE_VIEW。
要添加数据产品,请选择 Done,然后选择 Save。
继续更新所需的列表字段。
对于此用例,请编辑重新共享部分,以便无法重新共享此列表。这是可选的。您可以配置重新共享的列表,以便继续重新共享。
备注
如果为跨数据库的重新共享列表启用自动履行,则必须指定仓库。这可以在列表的自动履行设置的 UI 中完成,也可以通过在列表清单的
auto-fulfillment属性中指定warehouse以编程方式完成。发布列表。
该列表现在可供业务合作伙伴使用。
要查看您共享的列表,请执行以下操作:
在导航菜单中,选择 Data sharing » External sharing。
在 External sharing 页面中,选择 Shared by your account 选项卡。
第 3 步:使用者 B 检索重新共享的列表¶
在此示例中,使用者 B 检索在上一步中重新共享的列表。
以使用者 B 的身份登录 Snowsight。
在导航菜单中,选择 Data sharing » External sharing。
在 External sharing 页面中,选择 Shared with you 选项卡。
选择 Get 以检索列表,然后再次选择 Get 以确认。
此时,重新共享的列表即可使用。要测试列表,请运行以下命令:
SELECT * FROM resharing_daily_revenue_table.public.drt_secure_view;