このガイドでは、MashuがAWS Glue Data Catalog からメタデータを同期するための設定手順を説明します。設定は、AWS Glue 側での権限設定とMashu側での接続設定の2つのステップで構成されます。
1. メタデータソースの作成
-
Mashuにログインし、データソース作成画面を開きます。
-
データソースのタイプとして 「AWSGlue」 を選択して、新しいデータソースを作成します。
2. AWS IAM ロールの作成
MashuがAWS Glueへ接続するためのIAMロールを作成し、必要な権限を付与します。
このロールは、同期対象のAWS Glueが存在するAWSアカウントに作成する必要があります。Mashuは、このロールを利用してAWS Glueデータカタログのメタデータを同期します。
信頼ポリシーの設定
ロール作成時、「信頼されたエンティティ」として設定する信頼ポリシーは、Mashuのデータソース詳細画面(接続情報タブ)にある「信頼ポリシーをダウンロード」ボタンから取得できます。
許可ポリシーのアタッチ
作成したロールには、以下の権限(パーミッション)ポリシーをアタッチします。
{注記:
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": ["glue:GetTables", "glue:GetDatabases"],
"Resource": [
"arn:aws:glue:<リージョン>:<アカウントID>:catalog",
"arn:aws:glue:<リージョン>:<アカウントID>:table/*",
"arn:aws:glue:<リージョン>:<アカウントID>:database/*"
]
}
}
JSON内の<リージョン>および<アカウントID>は、ご利用のAWS環境に合わせて実際の情報に置き換えてください。
3. 接続情報設定
データソース画面の「接続設定」タブで、AWS Glue への接続情報を設定します。
- ロールARN: 前の手順(ステップ2)で作成したIAMロールのARNを指定します。
- リージョン: 同期対象のAWS Glueデータカタログが存在するリージョン名を指定します。(例:
ap-northeast-1
)
「保存する」ボタンを押下して接続情報を保存します。
4. データベース選択
接続情報が正しく保存されると、IAMロールに設定した権限でアクセス可能な AWS Glueデータベースの一覧が表示されます。一覧の中から、メタデータを同期したいデータベースを選択してください。選択したデータベース配下にあるすべてのテーブルが同期の対象となります。
5. データソース設定(メタデータ同期オプション)
「データソース設定」タブでは、メタデータの同期に関する3つのオプション(マッピング、マージ、同期対象)を設定できます。
5.1. マッピング設定
Glue の「テーブルの説明」、「カラムのコメント」を、Mashuのどの項目(エイリアス/説明)に対応させるかを設定します。
- Glueのテーブルの説明のマッピング先:
- エイリアス: テーブルの説明をMashuメタデータの「エイリアス」にマッピングします。
- 説明: テーブルの説明をMashuメタデータの「説明」にマッピングします。
- エイリアスと説明: 両方にマッピングします。
- Glueのカラムのコメントのマッピング先:
- エイリアス: カラムのコメントをMashuカラムの「エイリアス」にマッピングします。
- 説明: カラムのコメントをMashuカラムの「説明」にマッピングします。
- エイリアスと説明: 両方にマッピングします。
5.2. メタデータマージ設定
2回目以降の同期時に、Mashu上で編集した内容をGlueの情報で上書きするかどうかを個別に設定します。
- メタデータのエイリアスを上書きする: ONにすると、Glueの「テーブルの説明」でMashu メタデータのエイリアスを上書きします。
- メタデータの説明を上書きする: ONにすると、Glueの「テーブルの説明」でMashu メタデータの説明を上書きします。
- カラムのエイリアスを上書きする: ONにすると、Glueの「カラムのコメント」でMashu カラムのエイリアスを上書きします。
- カラムの説明を上書きする: ONにすると、Glueの「カラムのコメント」でMashuカラムの説明を上書きします。
5.3 同期対象設定
Glue から同期するテーブルの種類を選択します。チェックを外した種類のテーブルは同期されません。
6, メタデータ同期の実行
「メタデータ」タブに移動し、「メタデータ同期」ボタンをクリックすることで、Glue からのメタデータ同期が開始されます。