列統計を生成するための前提条件
列統計を生成または更新するために、統計生成タスクはユーザーに代わって AWS Identity and Access Management (IAM) ロールを引き受けます。ロールに付与された許可に基づいて、列統計生成タスクは Amazon S3 データストアからデータを読み取ることができます。
AWS Glue では、列統計生成タスクを設定するときに、AWSGlueServiceRole AWS 管理ポリシーと指定されたデータソースに必要なインラインポリシーを含むロールを作成できます。
列統計の生成に既存のロールを指定する場合は、そのロールに AWSGlueServiceRole ポリシーまたは同等のポリシー (またはこのポリシーのスコープダウンバージョン)、および必要なインラインポリシーが含まれてることを確認します。次のステップに従って、新しい IAM ロールを作成します。
注記
Lake Formation によって管理されるテーブルの統計を生成するには、統計の生成に使用される IAM ロールに完全なテーブルアクセスが必要です。
AWS Glue では、列統計生成タスクを設定するときに、AWSGlueServiceRole AWS 管理ポリシーと指定されたデータソースに必要なインラインポリシーを含むロールを作成できます。また、ロールを作成して、以下のポリシーにリストされているアクセス許可をアタッチし、そのロールを列統計生成タスクに追加することもできます。
列統計を生成するための IAM ロールを作成するには
-
IAM ロールを作成するには、「AWS Glue の IAM ロールを作成する」を参照してください。
-
既存のロールを更新するには、IAM コンソールで、列統計の生成プロセスで使用されている IAM ロールにアクセスします。
-
[許可を追加] セクションで、[ポリシーをアタッチ] を選択します。新しく開いたブラウザウィンドウで、
AWSGlueServiceRoleAWS マネージドポリシーを選択します。 -
Amazon S3 のデータの場所からデータを読み取るための許可も含める必要があります。
[Add permissions] (アクセス許可の追加) セクションで、[Create policy] (ポリシーの作成) を選択します。新しく開いたブラウザウィンドウで、ロールで使用する新しいポリシーを作成します。
-
[ポリシーを作成] ページで、[JSON] タブを選択します。次の
JSONコードをポリシーエディタフィールドにコピーします。注記
次のポリシーでは、アカウント ID を有効な AWS アカウント に置き換え、
regionをテーブルのリージョンに置き換え、bucket-nameを Amazon S3 バケット名に置き換えます。 (オプション) Lake Formation の許可を使用してデータに対するアクセスを提供している場合、IAM ロールには
lakeformation:GetDataAccess許可が必要です。Amazon S3 のデータの場所が Lake Formation に登録されており、テーブルに対する
IAM_ALLOWED_PRINCIPALSグループ許可が、列統計生成タスクによって引き受けられる IAM ロールに付与されていない場合、そのロールには、テーブルに対する Lake FormationALTERおよびDESCRIBE許可が必要です。Amazon S3 バケットの登録に使用されるロールには、テーブルに対する Lake FormationINSERTおよびDELETE許可が必要です。Amazon S3 のデータの場所が Lake Formation に登録されておらず、テーブルに対する
IAM_ALLOWED_PRINCIPALSグループ許可が IAM ロールに付与されていない場合、そのロールには、テーブルに対する Lake FormationALTER、DESCRIBE、INSERT、およびDELETE許可が必要です。-
カタログレベルの
Automatic statistics generationオプションを有効にしている場合、IAM ロールには、デフォルトのデータカタログに対するglue:UpdateCatalogアクセス許可または Lake FormationALTER CATALOGアクセス許可が必要になります。カタログのプロパティは、GetCatalogオペレーションを使用して確認できます。 -
(オプション) 暗号化された Amazon CloudWatch Logs を書き込む列統計生成タスクには、キーポリシーで次の許可が必要です。
-
列統計の実行に使用するロールには、そのロールに対する
iam:PassRoleのアクセス許可が必要です。 -
列統計を生成するための IAM ロールを作成する場合、そのロールには、サービスがそのロールを引き受けることを可能にする次の信頼ポリシーも必要です。