教程:开始使用 Snowflake Data Clean Room 的 Web 应用程序

简介

Snowflake Data Clean Room 是一种加密安全的环境,允许实体就敏感数据进行协作。它允许实体与协作者共享其数据,同时通过严格控制使用数据可以做的事情来维护数据的隐私。

本教程将引导您完成将 Web 应用程序与 Snowflake Data Clean Room 结合使用的基本流程。

您将学习的内容

在本教程中,您将学习如何在 Web 应用程序中执行以下操作:

  • 在您的 Clean Room 环境中添加协作者。

  • 创建 Clean Room,包括如何添加数据、指定联接策略、定义协作者可以对数据运行哪种类型的分析,以及如何与协作者共享 Clean Room。

  • 安装 Clean Room,包括如何添加数据和定义如何将这些数据与协作者的数据结合起来。

  • 运行分析,包括如何根据 Clean Room 允许的内容创建新的分析,以及如何为分析指定相关参数。

  • 激活分析结果。

关于 Clean Room 协作者

Clean Room 协作者要么是提供商,要么是使用者。

提供商 是与其他 Clean Room 协作者共享数据的实体。他们创建和配置 Clean Room 以维护共享数据的隐私。

使用者 是使用 Clean Room 与共享数据进行交互的实体。使用者可以在 Clean Room 内分析和查询数据,包括使用自己的数据联接和丰富数据。

在本教程中,您将既是 Clean Room 的提供商,又是使用者。

先决条件

在完成本教程之前,管理员必须设置 Clean Room 环境并配置与之关联的 Snowflake 账户。必须对提供商账户和使用者账户都执行此操作。有关如何执行这些操作的详细信息,请参阅 开始使用 Snowflake Data Clean Rooms

要在本教程中充当使用者,您必须有权访问与第二个 Clean Room 关联的第二个 Snowflake 账户。这使您可以模仿使用者如何安装和使用 Clean Room。如果您没有第二个账户,您仍然可以使用本教程来学习如何创建、配置和共享 Clean Room。

如果您不是设置 Clean Room 的管理员,则 Clean Room 管理员还需要 将您添加为 Web 应用程序的用户。您需要成为 Clean Room 环境中的管理员用户。

以提供商身份登录 Web 应用程序

在本节中,您将登录到 Clean Room,您将在其中以提供商的身份创建、配置和共享 Clean Room。

要以提供商身份登录 Web 应用程序,请执行以下操作:

  1. 导航到 登录页面

    在本教程中,您必须是具有管理员角色的用户。

  2. 输入电子邮件地址,然后选择 Continue

  3. 输入密码。

  4. 如果您与多个 Clean Room 环境相关联,请选择要用作提供商账户的 Snowflake 账户。

将使用者添加为协作者

在本节中,您将添加您在本教程中使用的使用者账户作为协作者。管理员必须先将某人定义为协作者,然后 其他用户才能与该协作者共享 Clean Room。

要将使用者添加为协作者,请执行以下操作:

  1. 在左侧导航栏中,选择 Collaborators

  2. 选择 Snowflake Partners 选项卡。

  3. 选择 + Snowflake Partner

  4. Company Name 字段中,输入 Tutorial Consumer

  5. Email Address 字段中,输入与您的 Clean Room 用户关联的电子邮件。

  6. Account Locator 字段中,输入您用于模拟使用者体验的 Snowflake 账户的 账户定位器

  7. 选择您用于模拟使用者体验的账户的云和区域。

  8. 选择 Add

创建和共享 Clean Room

在本节中,您将执行以下操作:

  • 创建 Clean Room。

  • 向与协作者共享的 Clean Room 添加数据。

  • 定义联接策略,该策略控制协作者可以在哪些列上加入自己的数据。

  • 定义协作者可以在 Clean Room 中运行哪种类型的分析。

  • 与使用者共享 Clean Room。

开始创建过程

要开始创建 Clean Room 的过程,请执行以下操作:

  1. 在左侧导航栏中,选择 Clean Rooms

  2. Clean Rooms 页面上,选择 + Clean Room

  3. 为您的 Clean Room Tutorial 命名。您将允许协作者在 Clean Room 中进行受众重叠分析。

将数据添加到 Clean Room。

要向 Clean Room 添加数据,请执行以下操作:

  1. Datasource 部分中,选择 Snowflake

  2. Tables 下拉列表中选择 DEMO.CUSTOMERS 表。此表位于 SAMOOHA_SAMPLE_DATABASE 数据库下方。

  3. 选择 Next

指定联接策略

联接策略控制协作者可以联接共享表的哪些列。

要指定联接策略,请执行以下操作:

  1. Join Columns 下拉列表中选择以下列:

    • HASHED_EMAIL

    • HASHED_FIRST_NAME

    • HASHED_LAST_NAME

    • HASHED_PHONE

    协作者只能将他们的数据与这些列联接。

  2. 选择 Next

配置分析模板

分析模板控制协作者如何在 Clean Room 中访问共享数据。协作者只能运行符合模板的分析和查询。

要选择 Clean Room 中的协作者可以使用哪个分析模板并配置该模板,请执行以下操作:

  1. 选择 Audience Overlap & Segmentation 模板。协作者将仅限于进行受众重叠和分段分析。

  2. Tables 下拉列表中,选择 DEMO.CUSTOMERS 。协作者只能分析 DEMO.CUSTOMERS 表中的数据。

  3. Segmentation & Activation Columns 下拉列表中选择以下列:

    • AGE_BAND

    • DEVICE_TYPE

    • EDUCATION_LEVEL

    • STATUS

    作为使用者,您将能够使用这些列筛选和创建分段。

  4. 开启 Allow categorical value previews during filtering

  5. 选择 Next

与使用者共享 Clean Room。

现在您已经创建并配置了 Clean Room,可以与协作者共享,这样他们就可以使用它来进行分析。

要共享 Clean Room,请执行以下操作:

  1. 使用 Select Collaborator 下拉列表选择 Tutorial Consumer

  2. 选择 Finish

  3. 您需要等到 Clean Room 创建完成后才能继续本教程。定期选择 Refresh,直到 Tutorial 磁贴从 Processing 变为 Edit

恭喜!您已经创建并共享了 Snowflake Data Clean Room.

您学到的内容

在本节中,您学习了如何以提供商的身份安装、配置和共享 Clean Room。

在本教程的下一部分中,您将切换到联接 Clean Room 并使用它来分析数据的使用者。

以使用者身份登录 Web 应用程序

在本节中,您将从创建和共享 Clean Room 的提供商切换到安装 Clean Room 的使用者。您在不同的账户中安装 Clean Room 是为了模仿使用者在自己的账户中安装和使用 Clean Room 的方式。

要以使用者身份登录 Web 应用程序,请执行以下操作:

  1. 导航到 登录页面

  2. 输入电子邮件地址,然后选择 Continue

  3. 输入密码。

  4. 如果您与多个 Clean Room 环境相关联,请选择要用作使用者账户的 Snowflake 账户。

安装和配置 Clean Room

在本节中,您将执行以下操作:

  • 安装通过提供商账户与您共享的 Clean Room。

  • 向 Clean Room 添加数据,以便将其与提供商的数据联接。

  • 添加联接策略以定义使用者数据和提供商数据的关联方式。

  • 定义分析师可用于创建分段、筛选结果和丰富激活数据的列。

开始安装过程

要开始安装由提供商账户共享的 Clean Room,请执行以下操作:

  1. 在左侧导航栏中,选择 Clean Rooms

  2. 选择 Invited 选项卡。

  3. 找到磁贴 Tutorial,然后选择 Join

将使用者数据添加到 Clean Room

要向 Clean Room 添加数据,请执行以下操作:

  1. Datasource 部分中,选择 Snowflake

  2. Tables 下拉列表中选择 DEMO.CUSTOMERS 表。此表位于 SAMOOHA_SAMPLE_DATABASE 数据库下方。

  3. 选择 Next

定义联接策略

使用者使用联接策略来指定在分析或查询中联接哪些列,从而定义提供商表和使用者表之间的关系。

要定义联接策略,请执行以下操作:

  1. 确保使用者表 (My Columns) 中的列与提供商表 (Collaborator Columns) 中的列相匹配。例如,使用者的 HASHED_EMAIL 列应与提供商的 HASHED_EMAIL 列联接。您指定只有在创建 Clean Room 时才允许协作者联接这些列。

  2. 选择 Next

定义分段和激活列

当您在 Clean Room 安装过程中选择分段和激活列时,您正在定义哪些列可供在 Clean Room 中运行分析的用户使用。分析师只能根据这些列创建分段。将激活数据发送回提供商时,除非数据来自其中一列,否则分析师无法使用数据丰富分析结果。

要定义分段和激活列,请执行以下操作:

  1. Tables 下拉列表中选择 DEMO.CUSTOMERS 表。

  2. Segmentation & Activation Columns 下拉列表中选择以下列:

    • INCOME_BRACKET

    • REGION_CODE

    • STATUS

  3. 选择 Finish

  4. 您需要等到 Clean Room 安装完毕后才能继续本教程。定期选择 Refresh,直到 Tutorial 磁贴从 Processing 变为 Run

运行分析

在本节中,您将在 Clean Room 中进行受众重叠和分段分析。

要运行分析,请执行以下操作:

  1. 在左侧导航栏中,选择 Clean Rooms

  2. 选择 Joined 选项卡。

  3. 找到磁贴 Tutorial,然后选择 Run

  4. 选择 Audience Overlap & Segmentation 磁贴,然后选择 Proceed

  5. My Tables 中,选择 Customers

  6. Collaborator Table 中,选择 Customers

  7. My Join Columns 中,定义以下联接:

    1. 从下拉列表中,选择 HASHED_EMAIL

    2. 选择 + Join Column,然后选择 HASHED_FIRST_NAMEHASHED_LAST_NAME

    3. 依次选择 + Join ColumnHASHED_PHONE

    当您在 Clean Room 中进行分析时,结果将包括以下 任何 一项属实的记录:

    • 使用者表中的 HASHED_EMAIL 与提供商表中的 HASHED_EMAIL 相匹配。

    • 使用者的 HASHED_FIRST_NAME 匹配提供商的 HASHED_FIRST_NAME而且,使用者的 HASHED_LAST_NAME 匹配提供商的 HASHED_LAST_NAME

    • 使用者的 HASHED_PHONE 匹配提供商的 HASHED_PHONE

  8. User Segmentation 部分中,执行以下操作:

    1. My Columns 下拉列表中,选择 INCOME_BRACKET

    2. Collaborator Columns 下拉列表中,选择 AGE_BAND

    分析结果将按如下分段分组。

  9. Filters 部分中,使用下拉列表定义 DEMO.CUSTOMERS.STATUS = GOLD。请务必使用颜色编码在使用者账户 (My Columns) 中选择列。

    使用者表中记录的 STATUS 必须为 GOLD,才能包含在分析结果中。

  10. 选择 Run

  11. 使用 Results 部分查看结果。您可以在匹配率和重叠次数之间切换结果指标。

  12. 要查看分析的分段组,请选择 Download 并打开以逗号分隔的文件。

  13. 继续教程中的下一步,将丰富的结果发送回提供商以供激活。

激活结果

在本节中,您将通过将分析结果推送回提供商的 Snowflake 账户来激活分析结果。这些结果将由使用者和提供商表中的数据丰富。

要激活分析结果,请执行以下操作:

  1. Results 部分中,选择 Activate

  2. 选择您用于共享 Clean Room 的提供商账户的名称。

  3. Segment Name 字段中,指定 Provider Snowflake Account

  4. Attribute Columns 下拉列表中,选择 Select All 。当提供商查看分析结果时,匹配的记录将丰富这些列中的其他数据。

    您会注意到,可用列与您在配置 Clean Room 时选择的分段和激活列以及您在安装 Clean Room 时选择作为使用者的分段和激活列相同。

  5. 选择 Push Data

恭喜!现在,您已经在使用者账户中安装并配置了 Clean Room,进行了分析,并将结果推送回提供商账户进行激活。

以提供商身份查看激活数据

在本节中,您将切换回提供商的角色以查看使用者激活的结果。使用者激活数据存储在提供商的 Snowflake 账户的 SAMOOHA_BY_SNOWFLAKE_LOCAL_DB.PUBLIC.PROVIDER_ACTIVATION_SUMMARY 表中。

在使用 Snowsight 查询此表之前,您必须登录到 Clean Room 环境以在使用者账户和提供商账户之间创建管道。

要以提供商身份登录 Clean Room 环境,请执行以下操作:

  1. 导航到 登录页面

  2. 输入电子邮件地址,然后选择 Continue

  3. 输入密码。

  4. 如果您与多个 Clean Room 环境相关联,请选择要用作提供商账户的 Snowflake 账户。

重要

如果这是您首次向提供商推送激活数据,则从您登录提供商 Clean Room 环境起,数据可能需要长达 24 小时才能显示在提供商的 Snowflake 账户中。后续激活不会出现这种延迟。

成功构建管道后,您可以使用 SQL 查询或使用 Snowsight 中的数据库对象资源管理器查看激活数据:

  1. 登录 Snowsight 获取提供商账户。您登录的是 Snowflake 账户,而不是 Clean Room 环境。

  2. 在左侧导航栏中,选择 Data » Database

  3. 导航到 SAMOOHA_BY_SNOWFLAKE_LOCAL_DB » PUBLIC » Tables » PROVIDER_ACTIVATION_SUMMARY

  4. 选择 Data Preview 查看激活数据。

清理

您可以删除为本教程创建的 Clean Room 和激活数据,以清理生产环境。

删除激活数据

要从提供商的 Snowflake 账户中删除激活数据,请执行以下操作:

  1. 登录 Snowsight 获取提供商账户。您登录的是 Snowflake 账户,而不是 Clean Room 环境。

  2. 打开 Projects » Worksheets

  3. 选择 + » SQL Worksheet

  4. 在新工作表中,粘贴并运行以下语句以删除为本教程创建的激活数据:

    DELETE FROM samooha_by_snowflake_local_db.public.provider_activation_summary
       WHERE segment = 'Provider Snowflake Account';
    
    Copy

删除 Clean Room

删除提供商账户中的 Clean Room 会将其从提供商账户和使用者账户中移除。

要删除 Clean Room,请执行以下操作:

  1. 导航到 登录页面

  2. 输入电子邮件地址,然后选择 Continue

  3. 输入密码。

  4. 选择您用作提供商账户的 Snowflake 账户。

  5. 在左侧导航栏中,选择 Clean Rooms

  6. Created 选项卡上,找到 Tutorial 磁贴并选择更多图标 (三个垂直点表示更多选项)。

  7. 选择 Delete

  8. 选择 Proceed

了解详情

恭喜!现在,您已使用 Web 应用程序以提供商的身份创建和共享 Clean Room。您还充当了使用 Clean Room 在保护隐私的环境中分析数据的使用者。

您可以使用以下资源来了解更多信息:

语言: 中文