前提
・利用環境:Databricks
手順
動画再生リスト
1.S3バケットを作成
2.AWS GlueでDatabaseを作成
3.AWS AthenaでIcebergテーブルを作成
4.外部ロケーションを作成
1)「カタログ」→「外部データ」をクリック

2)「外部ロケーションを作成」をクリック

3)「AWSクイックスタート」→「次のページ」をクリック

4)S3のパケット名を入力し、「新規トークンを生成」をクリック
例:
パケット名:s3://ho-iceberg(親パケット)

5)表示されるトークンをコピーし、「クイックスタートで開始」をクリック
6)遷移されたAWSのスタックのクイック作成画面のDatabricks Personal Access Token欄にコピーしたトークンを貼り付ける

7)スタック名を適宜変更し、最後の以下をチェックし、「スタックの作成」をクリック
☑︎AWS CloudFormation によって IAM リソースがカスタム名で作成される場合があることを承認します。

8)Statusが「Create_Complete」になったら、Databricksの外部ロケーション一覧にも反映されてることを確認できる


9)外部ロケーションの詳細画面に入り、「接続テスト」をクリックし、成功できるか確認

10)「権限」→「付与」をクリックし、対象ユーザー、グループに必要な権限を付与

5.GlueとのFederation接続を作成
1)「カタログ」→「外部データ」→「接続」→「接続を作成」をクリックし、上のDemo動画を参考に上に作成した外部ロケーションと資格情報を設定して、接続を作成
2)設定が成功すると、カタログをクリックし、テーブルの詳細を確認。GlueのIcebergデータソースが取得されてることを確認

6.Notebookからdataframeを作ってみる
df = spark.table("gluetest_catalog.icebergtest_schema.aws_iceberg_table1")
display(df)




