本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Lake Formation 中阅读和写受管制的表
受管理的表格有表现在 Lake Formation 中跟踪构成表数据的 Amazon S3 对象。当您向数据添加新对象时,Lake Formation 会更新清单。清单通过以下方式参与受管理的表读取和写入操作:
-
写入 — 当您将表数据添加为新的 Amazon S3 对象时,您可以调用
UpdateTableObjects
API 操作将这些对象添加到受管理的表清单中。您通常在交易中进行一个或多个这些调用,如果出现故障,可以回退这些调用。调用UpdateTableObjects
API,主要需要INSERT
和DELETE
受管理表上的 Lake Formation 权限。 -
读取 — 您可以使用 Lake Formation 的查询受管理表的数据查询 API(
StartPlanQuery
,例如)。查询 API 强制执行行级和列级权限。要调用 API,委托人需要SELECT
受管理表上的 Lake Formation 权限。您可以选择传递交易 ID 或QueryAsOfTime
从某个时间起检索数据的时间戳。
在 Amazon S3 中创建清单中的对象并将其添加到受管理的表中之后,它应该不被修改。尽管 Amazon S3 允许多次写入对象,但 Lake Formation 假设数据湖中的对象已写入一次。
有关针对受管理表的事务的详细信息,包括演示使用的示例代码UpdateTableObjects
和GetTableObjects
请参阅在交易中读取数据湖并向数据湖写入和对象 API.
受监管的表的 CloudTrail 数据事件
当你的应用程序调用GetTableObjects
、UpdateTableObjects
,或者DeleteObjectsOnCancel
,以下权限Amazon CloudTrail将生成事件。
-
对应于的数据事件
GetTableObjects
对于资源链接。 -
对应于的管理事件
GetTable
对于资源链接。 -
对应于的管理事件
GetTable
对于受管理的表格。
默认情况下不会启用 CloudTrail 数据事件。有关 CloudTrail 中数据事件的更多信息,请参阅记录跟踪记录的数据事件中的Amazon CloudTrail用户指南.
如果您是否已启用 CloudTrail 数据事件并使用 Lake Formation 拥有共享资源资源链接,您可能看不到 CloudTrail 中的预期事件。对于跨账户调用,无论是在使用资源链接时,还是在 AP 调用中指定目录 ID 时,Lake Formation 都会发出 CloudTrail 事件仅在呼叫者方面进行。资源所有者没有获得事件的副本。