使用Delta Sharing安全地共享数据

本文介绍Delta Sharing in Databricks,这是一个安全的数据共享平台,可以让您与组织以外的用户共享Databricks中的数据。bob体育客户端下载

本网站的Delta Sharing文章主要介绍如何共享Databricks的数据。增量共享也可用作开源项目可以用来共享来自其他平台的Delta表。bob体育客户端下载

请注意

如果你是数据接收方谁被授予了通过Delta Sharing访问共享数据的权限,而你只是想学习如何访问这些数据,明白吗使用Delta共享访问与您共享的数据

什么是Delta Sharing?

三角洲分享是一个开放的协议由Databricks开发,可与其他组织安全地共享数据,无论他们使用何种计算平台。bob体育客户端下载Databricks将Delta Sharing构建到其Unity Catalog数据治理平台中,使Databricks用户(称为数据库用户)bob体育客户端下载能够使用数据提供商,以便与其组织以外的个人或组共享数据,称为数据接收方

Delta Sharing的本机集成统一目录允许您在一个平台上管理、治理、审计和跟踪共享数据的使用情况。bob体育客户端下载事实上,您的数据必须在Unity Catalog中注册,才能用于安全共享。数据也必须在Delta表格式

Delta共享工作流

股份及受赠人

数据库中的增量共享的基本概念是股票而且收件人

Delta共享中的共享和接收人

什么是股份?

在Delta Sharing中,a分享是要与一个或多个接收者共享的表和表分区的只读集合。

共享是在Unity Catalog中注册的安全对象。一个共享可以包含来自单个Unity Catalog亚矿的表。您可以随时从共享中添加或删除表,也可以随时向共享分配或撤销数据接收方访问权限。

如果你从Unity Catalog亚存储中删除一个共享,该共享的所有接收者将失去访问它的能力。

看到为Delta Sharing创建和管理共享

接收者是什么?

一个收件人是将组织与允许该组织访问一个或多个共享的凭据或安全共享标识符相关联的对象。

作为数据提供者(共享者),你可以为任何给定的Unity Catalog metastore定义多个接收方,但如果你想与特定用户或用户组共享来自多个metastore的数据,你必须为每个metastore分别定义接收方。一个接收者可以访问多个共享。

如果你从你的Unity Catalog metastore中删除了一个收件人,该收件人将失去它以前可以访问的所有共享的访问权。

看到为增量共享创建和管理数据接收方

开放共享vs .数据对数据共享

使用Delta Sharing的方式取决于与谁共享数据:

  • 公开分享允许您与任何用户共享数据,无论他们是否有权访问Databricks。

  • Databricks-to-Databricks分享允许您与Databricks用户共享数据,这些用户有权访问与您不同的Unity Catalog metastore。

什么是开放式Delta共享?

如果您希望与Databricks工作区之外的用户共享数据,无论他们是否使用Databricks,都可以使用open Delta Sharing安全地共享数据。作为数据提供者,您生成一个令牌并安全地与接收方共享它。他们使用令牌进行身份验证,并获得对您授予他们访问权限的共享中包含的表的读访问权。

收件人可以使用许多计算工具和平台访问共享数据,包括:bob体育客户端下载

  • Apache火花

  • 熊猫

  • 权力BI

有关Delta共享连接器的完整列表以及关于如何使用它们的信息,请参见三角洲分享文档。

另请参阅使用Delta Sharing开放共享协议共享数据

什么是数据对数据的增量共享?

如果你想要与那些没有访问Unity Catalog metastore的用户共享数据,你可以使用Databricks-to-Databricks Delta Sharing,只要收件人有权访问Databricks工作空间即可为Unity目录启用.Databricks-to-Databricks共享允许您与其他Databricks帐户中的用户共享数据,无论他们是在AWS还是Azure上,这是在您自己的Databricks帐户中安全地跨不同Unity Catalog亚存储共享数据的好方法。

此场景的优点是共享接收者不需要令牌来访问共享,提供者也不需要管理接收者令牌。共享连接的安全性(包括所有身份验证、身份验证和审计)完全通过Delta sharing和Databricks平台进行管理。bob体育客户端下载

另请参阅使用Delta共享数据库到数据库协议共享数据

管理员如何设置增量共享?

同一帐户中Unity Catalog亚存储之间的数据库到数据库共享始终是启用的。要启用Delta Sharing与Databricks工作空间中的其他帐户或非Databricks客户端共享数据,Databricks帐户admin或metastore admin执行以下设置步骤(在高级级别):

  1. 为Databricks帐户启用“外部数据共享”特性组。

    看到为您的帐户启用增量共享

  2. 为管理你想要共享的数据的Unity Catalog metastore启用Delta Sharing。

    请注意

    如果您打算使用Delta Sharing仅与您帐户中其他Unity Catalog metastore上的用户共享数据,则不需要在您的metastore上启用Delta Sharing。默认情况下,单个Databricks帐户内的Metastore-to-metastore共享是启用的。

    看到在metastore上启用Delta Sharing

  3. 在metastore中创建一个包含一个或多个表的共享。

    看到为Delta Sharing创建和管理共享

  4. 创建收件人。

    看到为增量共享创建和管理数据接收方

    如果您的收件人不是Databricks用户,或者无法访问为Unity Catalog启用的Databricks工作空间,则必须使用公开分享.为该接收者生成一组基于令牌的凭据。

    如果您的收件人可以访问为Unity Catalog启用的Databricks工作空间,您可以使用Databricks-to-Databricks分享,并且不需要基于令牌的凭据。你要求共享标识符并使用它来建立安全连接。

    提示

    把你自己作为测试接收者来尝试设置过程。

  5. 授予接收者对一个或多个共享的访问权。

    看到授予和管理对Delta Sharing数据共享的访问权

  6. 向收件人发送连接到共享所需的信息。

    看到向收件人发送他们的连接信息

    对于开放共享,使用安全通道向收件人发送激活链接,允许他们下载基于令牌的凭据。

    对于databicks -to-Databricks共享,只要您授予收件人对共享的访问权限,共享中包含的数据就可以在收件人的Databricks工作区中使用。

接收方现在可以访问共享数据。

接收者如何访问共享数据?

接收方以只读格式访问共享数据。安全访问依赖于共享模型:

每当数据提供者在自己的Databricks帐户中更新数据表时,更新几乎实时地出现在接收方的系统中。

如何跟踪谁在共享和访问共享数据?

数据提供者可以使用Databricks审计日志来监视共享和收件人的创建和修改,并且可以监视共享上的收件人活动。看到使用Delta sharing对数据共享进行审计和监控(针对提供商)

在Databricks帐户中使用共享数据的数据接收者可以使用Databricks审计日志记录来了解谁正在访问哪些数据。看到使用增量共享(针对收件人)审计和监视数据访问

限制

  • 只有存储在Unity Catalog metastore中的表才能使用Delta Sharing共享。

  • 只支持Delta格式的表。您可以轻松地将Parquet表转换为delta -然后再转换回来。看到转换为

  • 此版本不支持共享视图。

资源配额

下面的值表示增量共享资源的配额。

对象

价值

提供者

metastore

1000

收件人

metastore

5000

股票

metastore

1000

分享

1000

如果您希望超出这些资源限制,请与Databricks帐户代表联系。##下一步