AWS Glue API でのリソースリンク処理 - AWS Lake Formation

AWS Glue API でのリソースリンク処理

以下は、AWS Glue Data Catalog API がデータベースおよびテーブルリソースリンクを処理する方法を説明する表です。すべての Get* API オペレーションで、呼び出し側が許可を持つデータベースとテーブルのみが返されます。また、リソースリンクを通じて対象のデータベースやテーブルにアクセスするときは、ターゲットとリソースリンクの両方に対する AWS 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 指定されたデータベースがリソースリンクである場合、データベースリンクをたどってターゲットデータベース内からテーブルとテーブルリソースリンクを返します。ターゲットデータベースが別の AWS アカウントからの共有データベースである場合、操作はそのデータベース内の共有テーブルのみを返します。これは、ターゲットデータベース内のテーブルリソースリンクをたどりません。そうでない場合、指定されたデータベースがローカル (所有する) データベースであれば、操作がローカルデータベース内のすべてのテーブルを返し、各テーブルリソースリンクをたどってターゲットテーブルのプロパティを返します。
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 オペレーション) データベースがリソースリンクである場合は、リソースリンクをたどり、ターゲットデータベースで操作を実行します。
以下も参照してください。