Snowflake的标签功能
今年 8 月份,Snowflake对外发布了对象标签功能的预览版,此功能通过应用业务上下文,例如将数据对象标识为敏感、PII 或属于成本中心的标签,使企业可以更轻松地了解和控制其数据。对象标记通过添加现有治理功能(例如 Snowflake 的动态数据屏蔽和行访问策略)来扩展 Snowflake 的本机数据治理功能。
了解数据所在的位置通常是通过适当的访问控制保护数据的第一步。对于敏感数据,例如带有财务报告的表或带有 PII 或 PHI 的列,了解数据在庞大数据资产中的位置对于满足法规遵从性要求至关重要。
对象标记的工作原理
Snowflake 的对象标记功能提供了原生功能,可通过创建您自己的自定义标签库并将标签与所需对象(例如列、表/视图、数据库、仓库等)相关联来轻松解决这些用例。在将标签与对象相关联时,可以为标签分配字符串值。例如,您可以用 PII 标记一列,例如用 标记电话号码,用 标记PII = “Phone Number”包含电子邮件地址的另一列PII = “Email”。在本例中,PII是标签和”Phone Number”或是”Email”标签值。同样,您可以使用业务属性(例如成本中心或部门)标记仓库。例如,您可以标记一个专供销售部门使用的Department = “Sales”仓库和另一个专供财务部门使用的仓库Department = “Finance”. 如您所见,您可以根据部门细分您的信用消耗和使用情况以进行报告。
示例1:标记敏感数据
让我们以管理员 Morgan 为例来看看使用对象标记功能的好处,他的任务是跟踪包含机密数据的表和带有 PII 的列。在此示例中,Morgan 创建了一个集中式标签库以实现跨数据资产的一致性,但依赖于数据所有者(例如 Alex)提供有关他们拥有的数据敏感性的输入。

Morgan 首先在名为 TAG_LIBRARY 的集中模式中创建一个标签库。这使得维护可应用于跨账户的账户和模式级对象的标签的集中分类变得更容易。Morgan 授予 Alex 将标签应用于 Alex 拥有的对象的特权,如下所示。
Alex 拥有 Clients 表。Clients 表是一个机密表,有一个包含 PII 的 Phone 列。创建表后,Alex 立即执行其作为数据所有者的职责,并使用相应的标签标记表和列,如下所示。
由于 Alex 等数据所有者使用集中标签为敏感数据分配适当的标签,Morgan 可以定期执行 PII 数据报告,并对敏感数据应用屏蔽策略。Morgan 使用新的 TAG_REFERENCES 帐户使用视图来跟踪新标记的对象。Morgan 还使用 POLICY_REFERENCES 帐户使用视图来确保敏感列具有与其关联的相应屏蔽策略。

示例2:标记成本中心
PII 列跟踪示例说明了对象标记的工作原理,但它可用于解决其他用例。了解消耗数据或仓库信用的成本中心对于分解消耗以进行成本报告和退款非常重要。Tag_References 帐户使用视图可与 Warehouse_Metering_History 一起使用,以报告每个成本中心标签的仓库信用消耗,如下例所示。

功能价值
- Consistent Assignment with Replilcation 标签继承
- Ease of Use 易用性
- Tag Lineage 标签血缘
- Sensitive Data Tracking 敏感数据追踪
- Centralized or Decentralized Management 集中或分散管理
- Resource Usage 资源使用统计
Demo视频:
结论
上面 snowflake 列举了两个示例场景:
标记敏感数据:给一些PII的列或数据打上安全标识的标签,对于有这些标签的数据可以统一应用一些屏蔽策略
标记成本中心:给一些warehouse打上部门标识的标签,再结合系统自带的使用统计表,统计每个成本中心的费用
综合来看,依靠灵活的标签功能,经过扩展,可以实现很多业务场景。
参考:
Snowflake的标签功能