如何使用 Lake Formation 与外部帐户共享 table

How to share a table with external account using Lake Formation

我需要与外部帐户共享在 Glue 中创建的 table。 实际上,这看起来很容易,但由于某种原因,共享 table 没有出现在目标帐户的 tables 列表中。

这是我在源帐户中所做的:

  1. 在 Glue 中创建了数据库和 table。
  2. 创建了指向存储数据的存储桶的“数据湖位置”。
  3. 撤销了 IAMallowedPrincipals(否则它不允许我授予访问权限)
  4. 已通过 select 授予外部帐户(12 位数字)权限并进行描述。

在目标账户中:

  1. 转到资源访问管理器并接受共享资源。

现在,table 应该在目标帐户中可见,但它不存在。虽然我可以在 RAM 中看到共享资源。

知道这里缺少什么吗? 谢谢!

转到目标帐户中的 LakeFormation,单击“tables”,select 共享 table(您可以通过“所有者帐户 ID”找到它),然后单击“操作”和“创建资源 link”。 现在您需要给这个 table 一个本地名称并选择它应该驻留在哪个数据库中。 单击“创建”即可 - 您可以从 Athena 查询它。