资源链接在 Lake Formation 中的工作原理 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

资源链接在 Lake Formation 中的工作原理

一个资源链接是指向本地或共享数据库或表的数据库或表的数据库或表的数据库目录对象。创建到数据库或表的资源链接后,您可以在需要使用数据库或表名称的任何位置使用资源链接名称。与您拥有的表或与您共享的表一起,表资源链接由glue:GetTables()并作为条目显示在Lake Formation 控制台的页面。数据库的资源链接的行为方式类似。

通过创建指向数据库或表的资源链接,您可以执行以下操作:

  • 为数据目录中的数据库或表指定不同的名称。如果不同,这将特别有用Amazon帐户共享具有相同名称的数据库或表,或者如果您的账户中的多个数据库具有相同名称的表。

  • 使用集成Amazon例如服务Amazon Athena和 Amazon Redshift Spectrum 来运行访问共享数据库或表的查询。某些集成服务无法跨账户直接访问数据库或表。但是,他们可以访问您账户中的资源链接到其他账户中的数据库和表。

注意

在中,您无需创建资源链接即可在中引用共享数据库或表。Amazon Glue提取、转换和加载 (ETL) 脚本。但是,为了避免在多个时出现模糊Amazon帐户共享具有相同名称的数据库或表,您可以在调用 ETL 操作时创建和使用资源链接或指定目录 ID。

以下示例显示了 Lake Formation页面,其中列出了两个资源链接。资源链接名称始终以斜体显示。每个资源链接随其链接的共享资源的名称和所有者一起显示。在此示例中,中的数据湖管理员Amazon账户 1111-2222-3333inventoryincidents表拥有 1234-5678-9012。然后,该账户中的用户创建了指向这些共享表的资源链接。


        “表” 页面显示两个资源链接。资源链接名称显示在 “名称” 列下,共享表名显示在 “共享资源” 列下,共享表的帐户显示在 “共享资源所有者” 列下。

以下是资源链接的注释和限制:

  • 需要资源链接才能使 Athena 和 Redshift Spectrum 等集成服务能够查询共享表的底层数据。这些集成服务中的查询是根据资源链接名称构建的。

  • 假设设置仅对此数据库中的新表使用 IAM 访问控制已关闭包含的数据库,只有创建资源链接的委托人才能查看和访问该资源链接。要使您账户中的其他委托人能够访问资源链接,请授予DESCRIBE允许它。要使其他人能够删除资源链接,请授予DROP允许它。数据湖管理员可以访问账户中的所有资源链接。要删除另一个委托人创建的资源链接,数据湖管理员必须首先授予自己DROP资源链接的权限。有关更多信息,请参阅 Lake Formation 权限参考

    重要

    授予对资源链接的权限不会授予对目标(链接)数据库或表的权限。您必须对目标单独授予权限。

  • 要创建资源链接,你需要 Lake FormationCREATE_TABLE要么CREATE_DATABASE许可,以及glue:CreateTable要么glue:CreateDatabase Amazon Identity and Access Management(IAM) 权限。

  • 您可以创建指向本地(拥有)数据目录资源的资源链接,以及与您的Amazonaccount.

  • 创建资源链接时,不会执行任何检查来查看目标共享资源是否存在,或者您是否对该资源具有跨账户权限。这使您可以按任意顺序创建资源链接和共享资源。

  • 如果删除资源链接,则不会删除链接的共享资源。如果删除共享资源,则不会删除指向该资源的资源链接。

  • 可以创建资源链接链。但是,这样做没有价值,因为 API 只遵循第一个资源链接。