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

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

Amazon Glue API 中的资源链接处理

下表说明了 Amazon Glue 数据目录 API 如何处理数据库和表资源链接。对于所有 Get* API 操作,仅返回调用者对其拥有权限的数据库和表。此外,通过资源链接访问目标数据库或表时,您必须同时拥有对目标和资源链接的 Amazon Identity and Access Management (IAM) 和 Lake Formation 权限。您需要对资源链接拥有的 Lake Formation 权限是 DESCRIBE。有关更多信息,请参阅DESCRIBE

数据库 API 操作
API 操作 资源链接处理
CreateDatabase 如果数据库是资源链接,则创建指向指定目标数据库的资源链接。
UpdateDatabase 如果指定的数据库是资源链接,则访问该链接并更新目标数据库。如果必须修改资源链接以链接到其他数据库,则必须将其删除,然后再创建一个新的资源链接。
DeleteDatabase 删除资源链接。这不会删除所链接的(目标)数据库。
GetDatabase 如果调用者对目标拥有权限,请单击该链接返回目标的属性。否则,它将返回链接的属性。
GetDatabases 返回数据库列表,包括资源链接。对于结果集中的每个资源链接,操作都会访问该链接以获取链接目标的属性。必须指定 ResourceShareType = ALL 才能查看与您的账户共享的数据库。
表 API 操作
API 操作 资源链接处理
CreateTable 如果数据库是资源链接,则访问该数据库链接并在目标数据库中创建表。如果表是资源链接,则该操作将在指定的数据库中创建资源链接。不支持通过数据库资源链接创建表资源链接。
UpdateTable 如果表或指定数据库是资源链接,则更新目标表。如果表和数据库都是资源链接,则操作将失败。
DeleteTable 如果指定的数据库是资源链接,则访问该链接并删除目标数据库中的表或表资源链接。如果表是资源链接,则该操作会删除指定数据库中的表资源链接。删除表资源链接不会删除目标表。
BatchDeleteTable DeleteTable 相同。
GetTable 如果指定的数据库是资源链接,则访问该数据库链接并返回目标数据库中的表或表资源链接。否则,如果表是资源链接,则该操作访问该链接并返回目标表的属性。
GetTables 如果指定的数据库是资源链接,则访问该数据库链接并返回目标数据库中的表和表资源链接。如果目标数据库是来自另一个 Amazon 账户的共享数据库,则该操作仅返回该数据库中的共享表。它不访问目标数据库中的表资源链接。否则,如果指定的数据库是本地(自有)数据库,则该操作将返回本地数据库中的所有表,并访问每个表资源链接以返回目标表的属性。
SearchTables 返回表和表资源链接。这不会访问链接以返回目标表的属性。必须指定 ResourceShareType = ALL 才能查看与您的账户共享的表。
GetTableVersion GetTable 相同。
GetTableVersions GetTable 相同。
DeleteTableVersion DeleteTable 相同。
BatchDeleteTableVersion DeleteTable 相同。
分区 API 操作
API 操作 资源链接处理
CreatePartition 如果指定的数据库是资源链接,则访问该数据库链接并在目标数据库的指定表中创建一个分区。如果表是资源链接,则该操作访问该资源链接并在目标表中创建分区。不支持通过表资源链接和数据库资源链接创建分区。
BatchCreatePartition CreatePartition 相同。
UpdatePartition 如果指定的数据库是资源链接,则访问该数据库链接并更新目标数据库中指定表中的分区。如果表是资源链接,则该操作访问该资源链接并更新目标表中的分区。不支持通过表资源链接和数据库资源链接创建分区。
DeletePartition 如果指定的数据库是资源链接,则访问该数据库链接并删除目标数据库中指定表中的分区。如果表是资源链接,则该操作访问该资源链接并删除目标表中的分区。不支持通过表资源链接和数据库资源链接创建分区。
BatchDeletePartition DeletePartition 相同。
GetPartition 如果指定的数据库是资源链接,则访问该数据库链接并返回指定表中的分区信息。否则,如果表是资源链接,则该操作访问该链接并返回分区信息。如果表和数据库都是资源链接,则返回一个空结果集。
GetPartitions 如果指定的数据库是资源链接,则访问该数据库链接并返回指定表中所有分区的分区信息。否则,如果表是资源链接,则该操作访问该链接并返回分区信息。如果表和数据库都是资源链接,则返回一个空结果集。
BatchGetPartition GetPartition 相同。
用户定义的函数 API 操作
API 操作 资源链接处理
(所有 API 操作) 如果数据库是资源链接,则访问该资源链接并针对目标数据库执行操作。