AWS Glue API でのリソースリンク処理
以下は、AWS Glue Data Catalog API がデータベースおよびテーブルリソースリンクを処理する方法を説明する表です。すべての Get*
API オペレーションで、呼び出し側が許可を持つデータベースとテーブルのみが返されます。また、リソースリンクを通じて対象のデータベースやテーブルにアクセスするときは、ターゲットとリソースリンクの両方に対する AWS Identity and Access Management (IAM) 許可と Lake Formation 許可の両方を持っている必要があります。リソースリンクに対する必要な Lake Formation 許可は DESCRIBE
です。詳細については、「DESCRIBE」を参照してください。
API オペレーション | リソースリンクの処理 |
---|---|
CreateDatabase |
データベースがリソースリンクである場合、指定されたターゲットデータベースへのリソースリンクを作成します。 |
UpdateDatabase |
指定されたデータベースがリソースリンクである場合、リンクをたどってターゲットデータベースを更新します。リソースリンクを異なるデータベースにリンクするように変更する必要がある場合は、リソースリンクを削除して、新しいリソースリンクを作成する必要があります。 |
DeleteDatabase |
リソースリンクを削除します。リンクされた (ターゲット) データベースは削除しません。 |
GetDatabase |
呼び出し元がターゲットに対する許可を持っている場合、リンクをたどってターゲットのプロパティを返します。それ以外の場合は、リンクのプロパティを返します。 |
GetDatabases |
リソースリンクを含めたデータベースのリストを返します。結果セット内のリソースリンクごとに操作がリンクをたどり、リンクターゲットのプロパティを取得します。アカウントと共有されているデータベースを表示するには、ResourceShareType = ALL を指定する必要があります。 |
API オペレーション | リソースリンクの処理 |
---|---|
CreateTable |
データベースがリソースリンクである場合、データベースリンクをたどってターゲットデータベース内にテーブルを作成します。テーブルがリソースリンクである場合は、操作が指定されたデータベースでリソースリンクを作成します。データベースリソースリンクを経由したテーブルリソースリンクの作成はサポートされていません。 |
UpdateTable |
テーブルまたは指定されたデータベースがリソースリンクである場合、ターゲットテーブルを更新します。テーブルとデータベースの両方がリソースリンクである場合は、操作が失敗します。 |
DeleteTable |
指定されたデータベースがリソースリンクである場合、リンクをたどってターゲットデータベース内のテーブルまたはテーブルリソースリンクを削除します。テーブルがリソースリンクである場合は、操作が指定されたデータベース内のテーブルリソースリンクを削除します。テーブルリソースリンクを削除しても、ターゲットテーブルは削除されません。 |
BatchDeleteTable |
DeleteTable と同じです。 |
GetTable |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどってターゲットデータベース内からテーブルまたはテーブルリソースリンクを返します。そうでない場合、テーブルがリソースリンクであれば、操作がリンクをたどってターゲットテーブルのプロパティを返します。 |
GetTables |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどってターゲットデータベース内からテーブルとテーブルリソースリンクを返します。ターゲットデータベースが別の AWS アカウントからの共有データベースである場合、操作はそのデータベース内の共有テーブルのみを返します。これは、ターゲットデータベース内のテーブルリソースリンクをたどりません。そうでない場合、指定されたデータベースがローカル (所有する) データベースであれば、操作がローカルデータベース内のすべてのテーブルを返し、各テーブルリソースリンクをたどってターゲットテーブルのプロパティを返します。 |
SearchTables |
テーブルとテーブルリソースリンクを返します。これは、リンクをたどってターゲットテーブルのプロパティを返しません。アカウントと共有されているテーブルを表示するには、ResourceShareType = ALL を指定する必要があります。 |
GetTableVersion |
GetTable と同じです。 |
GetTableVersions |
GetTable と同じです。 |
DeleteTableVersion |
DeleteTable と同じです。 |
BatchDeleteTableVersion |
DeleteTable と同じです。 |
API オペレーション | リソースリンクの処理 |
---|---|
CreatePartition |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどって、ターゲットデータベース内に指定されたテーブルにパーティションを作成します。テーブルがリソースリンクである場合は、操作がリソースリンクをたどってターゲットテーブルにパーティションを作成します。テーブルリソースリンクとデータベースリソースリンクの両方を通じたパーティションの作成はサポートされていません。 |
BatchCreatePartition |
CreatePartition と同じです。 |
UpdatePartition |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどって、ターゲットデータベース内にある指定されたテーブルのパーティションを更新します。テーブルがリソースリンクである場合は、操作がリソースリンクをたどってターゲットテーブルのパーティションを更新します。テーブルリソースリンクとデータベースリソースリンクの両方を通じたパーティションの更新はサポートされていません。 |
DeletePartition |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどって、ターゲットデータベース内にある指定されたテーブルのパーティションを削除します。テーブルがリソースリンクである場合は、操作がリソースリンクをたどってターゲットテーブルのパーティションを削除します。テーブルリソースリンクとデータベースリソースリンクの両方を通じたパーティションの削除はサポートされていません。 |
BatchDeletePartition |
DeletePartition と同じです。 |
GetPartition |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどって指定されたテーブルからのパーティション情報を返します。そうでない場合、テーブルがリソースリンクであれば、操作がリンクをたどってパーティション情報を返します。テーブルとデータベースの両方がリソースリンクである場合は、空の結果セットが返されます。 |
GetPartitions |
指定されたデータベースがリソースリンクである場合、データベースリンクをたどって、指定されたテーブル内のすべてのパーティションのパーティション情報を返します。そうでない場合、テーブルがリソースリンクであれば、操作がリンクをたどってパーティション情報を返します。テーブルとデータベースの両方がリソースリンクである場合は、空の結果セットが返されます。 |
BatchGetPartition |
GetPartition と同じです。 |
API オペレーション | リソースリンク処理 |
---|---|
(すべての API オペレーション) | データベースがリソースリンクである場合は、リソースリンクをたどり、ターゲットデータベースで操作を実行します。 |