本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
交易元数据操作
受管表的元数据包括以下内容:
-
表架构
-
Amazon S3 表对象清单
-
版本历史记录
-
权限
在更改受管表的清单时,应用程序还可以以事务方式更改数据目录中的架构。通过提供元数据交易,您可以对数据进行时空旅行查询,也可以查询以前存在的数据。
例如,Amazon Glue表 API 操作采用可选事务 ID,以允许应用程序创建、更新或删除受管表的元数据。这是由返回的交易 IDStartTransactionAPI。
当交易提交时,快照由表元数据创建并与事务 ID 相关联。API 操作可以通过传递事务 ID 来引用特定的快照。例如,您对UpdateTable使用事务 IDabc然后是另一个更新xyz更改架构。然后你可以打电话GetTable使用事务 IDabc,它接收的架构与事务 ID 时相同abc已提交。
交易元数据的另一个用例是执行时空旅行查询,以读取截至指定时间的表的元数据GetTable要么GetTablesoperation.
支持事务元数据操作的 API 操作
以下Amazon GlueAPI 操作支持事务元数据操作。对于每种描述,都假设交易 ID(返回者为StartTransaction要么start_transaction) 被传递给 API 调用,并且在某个时候会有提交。
| API 操作 | 描述 |
|---|---|
CreateTable |
当您提交事务创建数据目录中创建表(当您调用 |
UpdateTable |
更新表的元数据。提交事务后,创建表元数据的新快照。快照按事务 ID 编制索引。 |
DeleteTable, BatchDeleteTable |
提交事务时删除表。所有快照都被删除。 |
GetTable |
(可选)采用 如果你通过了 如果你通过了 |
GetTables |
(可选)采用 如果两个参数均未传递,则该操作将返回受管表和未受管控表。如果你通过了 如果你通过了 如果你通过了 |
交易元数据操作的限制
以下是事务元数据操作的当前限制:
-
例如,在数据目录中添加或修改数据库时,Lake Formation 不支持事务操作,
CreateDatabase、UpdateDatabase、GetDatabase、等 -
Lake Formation 不支持在数据目录中修改数据库时进行时空旅行读取。
-
例如,在添加或修改表分区时,Lake Formation 不支持事务操作
CreatePartition、BatchUpdatePartition、等 分区键可以通过查看表对象来识别。