创建指向共享数据目录表的资源链接 - AWS Lake Formation

创建指向共享数据目录表的资源链接

您可以使用 AWS Lake Formation 控制台、API 或 AWS Command Line Interface (AWS CLI) 创建指向任何 AWS 区域中共享表的资源链接。

创建指向共享表的资源链接(控制台)
  1. 通过 https://console.aws.amazon.com/lakeformation/ 打开 AWS Lake Formation 控制台。以对要包含资源链接的数据库拥有 Lake Formation CREATE_TABLE 权限的主体身份登录。

  2. 在导航窗格中,选择,然后选择创建资源链接

  3. 创建资源链接页面上,提供以下信息:

    资源链接名称

    输入一个与表名遵循相同规则的名称。该名称可以与目标共享表的名称相同。

    数据库

    本地数据目录中要包含资源链接的数据库。

    共享表所有者区域

    如果您要在其他区域创建资源链接,请选择目标共享表的区域。

    共享表

    从列表中选择共享表,或者输入本地(自有)或共享表的名称。

    列表中列出了与您的账户共享的所有表。记下与每个表一起列出的数据库和所有者账户 ID。如果您未看到您知道与您的账户共享的表,请检查以下内容:

    • 如果您不是数据湖管理员,请检查数据湖管理员是否向您授予了对该表的 Lake Formation 权限。

    • 如果您是数据湖管理员,并且您的账户与授权账户不在同一个 AWS 组织中,请确保您已接受关于该表的 AWS Resource Access Manager (AWS RAM) 资源共享邀请。有关更多信息,请参阅 接受来自 AWS RAM 的资源共享邀请

    共享表的数据库

    如果您从列表中选择了共享表,则此字段中将填充外部账户中共享表的数据库。否则,请输入本地数据库(以获取指向本地表的资源链接)或外部账户中共享表的数据库。

    共享表的所有者

    如果您从列表中选择了共享表,则此字段中将填充该共享表的所有者账户 ID。否则,请输入您的 AWS 账户 ID(以获取指向本地表的资源链接)或共享该表的 AWS 账户的 ID。

  4. 选择创建以创建资源链接。

    然后,您可以在页面的名称列下查看资源链接名称。

  5. (可选)向必须能够查看链接和访问目标表的主体授予对资源链接的 Lake Formation DESCRIBE 权限。

    但是,授予对资源链接的权限不会授予对目标(链接)数据库或表的权限。您必须单独授予对目标数据库的权限,才能在 Athena 中显示表/资源链接。

创建指向同一区域 (AWS CLI) 中共享表的资源链接
  1. 输入类似以下的命令。

    aws glue create-table --database-name myissues --table-input '{"Name":"my_customers","TargetTable":{"CatalogId":"111122223333","DatabaseName":"issues","Name":"customers"}}'

    此命令会创建一个指向共享 customers 的名为 my_customers 的资源链接,该共享表位于 AWS 账户 1111-2222-3333 中的数据库 issues 中。资源链接存储在本地数据库 myissues 中。

  2. (可选)向必须能够查看链接和访问目标表的主体授予对资源链接的 Lake Formation DESCRIBE 权限。

    但是,授予对资源链接的权限不会授予对目标(链接)表的权限。您必须单独授予对目标数据库的权限,才能在 Athena 中显示表/资源链接。

创建指向不同区域 (AWS CLI) 中共享表的资源链接
  1. 输入类似以下的命令。

    aws glue create-table --region eu-west-1 --cli-input-json '{ "CatalogId": "111122223333", "DatabaseName": "ireland_db", "TableInput": { "Name": "rl_useast1salestb_ireland", "TargetTable": { "CatalogId": "444455556666", "DatabaseName": "useast1_salesdb", "Region": "us-east-1", "Name":"useast1_salestb" } } }‘

    此命令在欧洲地区(爱尔兰)区域创建一个指向共享表 useast1_salestb 的名为 rl_useast1salestb_ireland 的资源链接,该共享表位于美国东部(弗吉尼亚州北部)区域的 AWS 账户 444455556666 中的数据库 useast1_salesdb 中。资源链接存储在本地数据库 ireland_db 中。

  2. 向必须能够查看链接并通过链接访问链接目标的主体授予 Lake Formation DESCRIBE 权限。

    但是,授予对资源链接的权限不会授予对目标(链接)表的权限。您必须单独授予对目标表的权限,才能在 Athena 中显示表/资源链接。