Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
中的资源链接处理 Amazon Glue APIs
下表说明了Amazon Glue数据目录如何 APIs 处理数据库和表资源链接。对于所有 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 操作) |
如果数据库是资源链接,则访问该资源链接并针对目标数据库执行操作。 |