Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
S3 Tables関連リソースをTerraformで作成してみる
Search
tac
March 13, 2025
Technology
0
150
S3 Tables関連リソースをTerraformで作成してみる
S3テーブルバケット関連のAWSリソースをTerraformでデプロイできるかを検証してみた記事です
tac
March 13, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
CQRS/ESになぜアクターモデルが必要なのか
j5ik2o
0
690
ECS_EKS以外の選択肢_ROSA入門_.pdf
masakiokuda
1
120
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
720
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
300
迷わない!AI×MCP連携のリファレンスアーキテクチャ完全ガイド
cdataj
0
310
Agentic AIが変革するAWSの開発・運用・セキュリティ ~Frontier Agentsを試してみた~ / Agentic AI transforms AWS development, operations, and security I tried Frontier Agents
yuj1osm
0
210
First-Principles-of-Scrum
hiranabe
3
1.5k
【Agentforce Hackathon Tokyo 2025 発表資料】みらいシフト:あなた働き方を、みらいへシフト。
kuratani
0
100
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.4k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.5k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
Next.js 16の新機能 Cache Components について
sutetotanuki
0
210
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
130
How to build a perfect <img>
jonoalderson
1
4.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
140
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
61
48k
Exploring anti-patterns in Rails
aemeredith
2
220
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
48
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
Copyright © 2025 BeeX Inc. All Rights Reserved. S3 Tables周りをTerraformデプロイ
2025年03月12日 株式会社BeeX 牧野孝洋
Copyright © 2025 BeeX Inc. All Rights Reserved. 2 自己紹介
・名前 牧野孝洋(Makino Takahiro) ・所属 2017年~:デジタルマーケティングコンサル企業の総合職 2023年~:愛知県の製造メーカーのソフトウェア開発職 2024年~:株式会社BeeX データ分析基盤の構築/コンサル支援 エンタープライズソリューション本部データインテリジェンス部 ・出身 ・生まれ:愛知県名古屋市(イチローの母校の近く) ・大学~:宮城県仙台市(震災の年に入学) ・新卒~:上京(墨田区の方) ・親しみのあるツール Step Functions, Glue, Terraform 2025/03/01@池袋で開催されたJAWSに初参加 会社ブログ:https://www.beex-inc.com/blog/jawsdays2025_booth_participate
Copyright © 2025 BeeX Inc. All Rights Reserved. S3 Tables周りをTerraformデプロイ
Copyright © 2025 BeeX Inc. All Rights Reserved. 4 S3テーブルバケットの概要
Apache Icebergとの統合 ・タイムトラベルなどのIceberg標準機能が使える! 自動圧縮機能 ・クエリパフォーマンスが最大3倍向上! ※汎用バケット上のIceberg形式テーブルとの比較 自動メンテナンス機能 ・スナップショットや、不要ファイル削除など自動実行してくれる!
Copyright © 2025 BeeX Inc. All Rights Reserved. 5 S3テーブルバケットの構成
参考: Using Amazon S3 Tables with AWS analytics services - Amazon Simple Storage Service S3テーブルバケット S3テーブル用カタログ 名前空間 テーブル データベース テーブル
Copyright © 2025 BeeX Inc. All Rights Reserved. 6 コンソール画面
テーブルバケットまでしか作れない・・ ※2025/03/12現在
Copyright © 2025 BeeX Inc. All Rights Reserved. 7 S3テーブルバケットの実装方法
実装方法 対応範囲 参考URL Terraform テーブルバケット、名前空間、テーブル (スキーマは定義できない) https://registry.terraform.io/providers/hashicorp/a ws/5.88.0/docs/resources/s3tables_table S3コンソール テーブルバケットのみ https://docs.aws.amazon.com/AmazonS3/latest/us erguide/s3-tables- create.html?icmpid=docs_amazons3_console AWS CLI テーブルバケット、名前空間、テーブル https://awscli.amazonaws.com/v2/documentation/ api/latest/reference/s3tables/index.html AWS SDK(Boto3) テーブルバケット、名前空間、テーブル https://boto3.amazonaws.com/v1/documentation/a pi/latest/reference/services/s3tables.html Amazon S3 REST API テーブルバケット、名前空間、テーブル https://docs.aws.amazon.com/AmazonS3/latest/A PI/API_Operations_Amazon_S3_Tables.html AWS CDK テーブルバケットのみ https://docs.aws.amazon.com/cdk/api/v2/docs/aw s-cdk-lib.aws_s3tables-readme.html AWS CloudFormation テーブルバケットのみ https://docs.aws.amazon.com/AWSCloudFormation /latest/UserGuide/AWS_S3Tables.html ※2025/03/10調査時点
Copyright © 2025 BeeX Inc. All Rights Reserved. 8 各AWS分析サービスとの統合(プレビュー)
参考:https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html スキーマ作成 &データ挿入 クエリエディタから SQLクエリ実行 Athenaクエリ実行IAMロール に権限付与 今後検証・・ 今後検証・・ 今後検証・・ 検証してみる
Copyright © 2025 BeeX Inc. All Rights Reserved. 9 検証結果
リソース 検証内容 検証結果 備考 S3テーブル Terraformで テーブルバケット &名前空間 &テーブル作成 できた テーブルバケット、名前空間、テーブル用の resourceブロックが用意されている (スキーマ定義用パラメータは用意されていない) EMR Terraformで スキーマ作成 &データインサート できた EMRクラスター用resourceブロック “aws_emr_cluster”のstepパラメータで、 スキーマ作成・データインサート用スクリプトの 実行を定義できる Lake Formation Terraformで IAMロールに S3テーブルの権限付与 できない ※今回はLake Formation コンソールから実装 resourceブロック “aws_lakeformation_permissions”が用意され ているが、「catalog_id」の指定が12桁でないと エラーになってしまう Athena Athenaコンソールから S3テーブルを SELECTクエリ できた 以下SQLクエリを実行できた: SELECT * FROM "s3tablescatalog/<バケット>”.“<名前空 間>”.“<テーブル>";
Copyright © 2025 BeeX Inc. All Rights Reserved. 10 Athenaクエリ結果
データが入っていることが確認できた
Copyright © 2025 BeeX Inc. All Rights Reserved. 11 Lake
Formationエラーに関するGitHub Issue 参考:[Bug]: LakeFormation permissions for S3Tables Catalog · Issue #40724 · hashicorp/terraform-provider-aws [Bug]: LakeFormation permissions for S3Tables Catalog #40724 catalog_idに<アカウントID>(12桁)以外を指定するとエラーになってしまう ※S3テーブル用カタログ:<アカウントID>:s3tablescatalog/<テーブルバケット名>
Copyright © 2025 BeeX Inc. All Rights Reserved. 12 まとめ
TerraformとS3テーブル Terraformから操作するとリソース削除がラク 例えばAWS CLIから削除しようとすると、 中身削除 → テーブル削除 → 名前空間削除 → テーブルバケット削除 一方Terraformだと、 terraform destroyコマンドで全部消えてくれる Terraformのアップデートにも期待 S3テーブルのスキーマ定義 Lake Formationの権限設定 など
Copyright © 2025 BeeX Inc. All Rights Reserved. Copyright ©
2025 BeeX Inc. All Rights Reserved.