介绍Databricks Unity目录:Lakehouse上的数据和AI的细粒度治理
更新:统一目录现在在AWS和Azure上普遍可用。
S3、ADLS和GCS等数据湖系统因其可伸缩性、低成本和开放接口而存储了当今企业中的大部分数据。随着时间的推移,这些系统也成为处理数据的一个有吸引力的地方lakehouse技术包括三角洲湖支持ACID事务和快速查询。然而,数据湖仍然比传统数据库更难管理的一个领域是治理;到目前为止,这些系统只提供了在文件级别管理权限的工具(例如S3和ADLS acl),使用了大多数数据专业人员不熟悉的特定于云的概念,如IAM角色。
所以我们很激动地宣布统一目录,它使用熟悉的开放接口为lakehouse数据带来细粒度治理和安全性。Unity Catalog允许组织使用标准的ANSI SQL或简单的UI管理细粒度的数据权限,使他们能够安全地开放他们的湖屋供广泛的内部消费。它跨云和数据类型统一工作。最后,它超越了管理表的范畴,管理其他类型的数据资产,比如ML模型和文件。因此,企业可以获得一种简单的方法来管理所有数据和人工智能资产:
现在使用数据湖治理工具有什么困难?
虽然现在所有的云存储系统(例如S3、ADLS和GCS)都提供安全控制,但这些工具是不安全的造成的而且成为特定于云计算的漏洞,随着组织规模的扩大,这两者都会带来问题。我们经常看到客户遇到四个问题:
- 缺乏细粒度的(行、列和视图级别)安全性:云数据湖通常只能在文件或目录级别设置权限,因此很难与特定用户共享表的一个子集。这使得不应该访问整个表的机载企业用户非常乏味。
- 与物理数据布局相关的治理:因为治理控制在文件级别,所以数据团队必须仔细构造数据布局,以支持所需的策略。例如,一个团队可能会将数据按国家划分到不同的目录中,并将每个目录的访问权授予不同的组。但是当治理规则发生变化时,团队应该做什么?如果一个国家内的不同州采用不同的数据法规,组织可能需要重组其所有数据。
- 非标准的、特定于云的接口:像IAM这样的云治理api对于数据专业人员(例如数据库管理员)来说是不熟悉的,并且在不同的云之间是不同的。如今,企业越来越多地需要在多个云中存储数据(例如,为了满足隐私法规),因此他们需要能够跨云管理数据。
- 不支持其他资产类型:数据湖治理api适用于湖中的文件,但现代企业工作流会产生各种其他类型的数据资产。例如,SQL工作流通常围绕视图,数据科学工作负载产生ML模型,许多工作负载连接到湖以外的数据源(例如,数据库)。在现代遵从性环境中,如果所有这些资产包含敏感数据,则需要以相同的方式进行管理。因此,数据团队必须在许多不同的系统中重新实现相同的安全策略。
Unity Catalog的方法
Unity Catalog通过实现基于跨数据资产类型和云的开放标准的细粒度数据治理方法来解决这些问题。它是围绕四个关键原则设计的:
- 细粒度的权限:Unity Catalog可以强制行、列或视图级别的数据权限,而不是文件级别的权限,这样你就可以始终与新用户共享部分数据而无需复制它。
- 一个开放、标准的接口:Unity Catalog的权限模型基于ANSI SQL,使任何数据库专业人员都能立即熟悉它。我们还构建了一个UI来简化数据管理员的管理,并且扩展了SQL模型来支持基于属性的访问控制,允许您用相同的属性标记许多对象(例如,“PII数据”),并对所有对象应用一个策略。最后,可以使用相同的基于SQL的接口来管理ML模型和外部数据源。
- 中央控制:Unity Catalog可以跨多个Databricks工作区、地理区域和云工作,允许您集中管理所有企业数据。这个中心位置还使它能够跟踪沿袭并审计所有访问。
- 从任何平台安全访问:bob体育客户端下载尽管我们喜欢Databricks平台,但我们知道许多客户也会从其bob体育客户端下载他平台访问数据,而且他们希望自己的治理规则能够跨平台工作。Unity Catalog强制任何通过JDBC/ODBC或通过JDBC/ODBC连接的客户机的安全权限三角洲分享这是我们推出的开放协议,用于在各种平台之间交换大型数据集。bob体育客户端下载
让我们看看如何使用Unity Catalog来实现公共治理任务。
使用ANSI SQL轻松管理权限
Unity Catalog通过开放标准ANSI SQL数据控制语言(DCL)跨云对所有数据资产进行细粒度的集中治理。这意味着管理员可以使用熟悉的SQL轻松地为任意特定于用户的数据子集授予权限,而不需要学习神秘的、特定于云的接口。我们还添加了强大的标记功能,允许您根据属性同时控制对多个数据项的访问,从而进一步简化大规模的治理。
下面是几个示例,说明如何使用SQL grant语句与Unity Catalog一起为存储在数据湖上的现有数据添加权限。
首先,您可以从头开始在目录中创建表,也可以指向云存储系统(如S3)中的现有数据,使用特定于云的凭据访问:
创建外部表格iot_events LOCATION s3:/...与凭据iot_iam_role
您现在可以简单地使用SQL标准格兰特
语句来设置权限,如在任何数据库中一样。下面是如何将iot_events权限授予整个组(如工程师),或仅将日期和国家列授予营销组的示例:
格兰特选择在iot_events来工程师格兰特选择(日期、国家)在iot_events来市场营销
Unity Catalog也理解SQL视图。这允许您创建SQL视图以复杂的方式聚合数据。以下是你可以使用的方法基于视图的访问控制为business_analysts只授予数据的聚合版本的访问权限:
创建视图aggregate_data作为选择日期、国家数(*)作为num_events从iot_events集团通过日期、国家格兰特选择在aggregate_data来business_analysts
此外,Unity Catalog允许您一次使用属性在多个项目上设置策略(基于属性的访问控制),这是一种大规模简化治理的有力方法。例如,您可以将多个列标记为PII,并在一个规则中管理对标记为PII的所有列的访问:
改变表格iot_events添加pii属性在电子邮件改变表格用户添加pii属性在电话格兰特选择在数据库iot_data有属性不在(pii)来product_managers
最后,相同的属性系统可以让您轻松地以与原始数据一致的方式管理MLflow模型和其他对象:
格兰特执行在模型有属性(eu_data)来eu_product_managers
在UI中发现和管理数据资产
Unity Catalog的UI使得在一个地方发现、描述、审计和管理数据资产变得很容易。数据管理员可以可视化地设置或检查所有权限,目录捕获审计和沿袭信息,这些信息向您显示每个数据资产是如何产生和访问的。UI是为协作而设计的,以便数据用户可以记录每个资产并查看谁在使用它。
使用Delta Sharing跨组织共享数据
每个组织都需要与客户、合作伙伴和供应商共享数据以进行协作。bob体育外网下载Unity Catalog实现了开源bob下载地址三角洲分享标准,让您安全地跨组织共享数据,无论它们运行在哪个计算平台或云上(任何Delta Sharing客户端都可以连接到数据)。bob体育客户端下载
开放接口,方便访问
Unity Catalog与您现有的目录、数据、存储和计算系统一起工作,因此您可以利用现有的投资并构建一个面向未来的治理模型。它可以挂载现有的数据Apache蜂巢Metastores或云存储系统,如S3、ADLS和GCS,无需移动。它还与治理平台(如Privacera和Immuta)连接,以允许您bob体育客户端下载定义用于管理数据访问的自定义工作流。最后,我们设计了Unity Catalog,这样你也可以从Databricks以外的计算平台访问它:ODBC/JDBC接口和高吞吐量访问bob体育客户端下载三角洲分享允许您在任何计算系统中安全地查询您的数据。