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
DynamoDBからS3(Icebergテーブル)へのZeroETLを行う
Search
afooooil
October 30, 2025
1
92
DynamoDBからS3(Icebergテーブル)へのZeroETLを行う
【AWS】AWS10分LT会 - vol.7 (
https://aws-likers.connpass.com/event/370773/
) で発表させていただいた内容です
afooooil
October 30, 2025
Tweet
Share
More Decks by afooooil
See All by afooooil
AWSで始めるサーバーレスなデータ分析基盤
afooooil
0
610
退屈なことはAI_Agentにやらせよう
afooooil
0
190
Amazon Qとのより良い付き合い方を考える
afooooil
0
210
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
260
Featured
See All Featured
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
250
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
27
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
So, you think you're a good person
axbom
PRO
0
1.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Google's AI Overviews - The New Search
badams
0
880
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
59
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
280
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
410
Become a Pro
speakerdeck
PRO
31
5.8k
Transcript
DynamoDBからS3(Icebergテーブル)への ZeroETLを行う 株式会社モリサワ 岡田 晃 AWS10分LT会 - vol.7
自己紹介 岡田 晃 / @afooooil 所属: 株式会社モリサワ ポジション: データエンジニア /
データサイエンティスト 好きなAWSサービス: CloudFormation / Athena
• データの抽出(Extract) • データの変換(Transform) • データの格納(Load) を行う一連のデータパイプライン。マグロの出荷に例えると... ETLとは? 収集 加工
格納
具体的にETLとは? DynamoDBの半構造化データを抽出(Extract)し、扱いやすい表形式へと変換 (Transform)しS3へと配置(Load)する。このような一連の操作をETLという。 ETL
なぜETLを行う必要? - 本番DBに直接、重たい分析クエリは投げられない - DynamoDBはテーブルのJoinなど分析に必要な操作が容易で ない - 他のデータソース(ログ)などと突き合わせて分析したい - 表形式のデータにSQLを用いて簡単にアクセスしたい
本番環境から分離し、データを変換して、分析用DBに格納する
これまでのDynamoDBからのS3へのETL • DynamoDBのPITRをLambdaでS3へコピー • RAWデータをGlue/Athenaなどを用いて変換して加工 後のデータをS3へ格納する
これまでのETLのパイプラインの課題 • DBのスキーマ更新に合わせてパイプラインも改修が必要だった • 差分更新のためには、工夫が必要だった • データを処理するためのロジックを書く必要があった
ZeroETLとは? ZeroETLとは、ETLを行うためのデータパイプラインをユー ザー側で構築を行わずに、マネージドなパイプラインを用いて ETLを行うこと サーバーレスと似たような概念だと思えばわかりやすい? - サーバーの管理をユーザーが行わなくてよいのがサーバーレス - ETLのパイプラインの管理を行わなくて良いのがZeroETL 2024/12にDynamoDBからSageMaker
Lakehouse(S3上へ のIcebergテーブル)へのZeroETLが可能になった。
ZeroETLを用いた場合 • DynamoDBからS3(Icebergテーブル)までのパイプラインの全てがマネー ジドに • マネコン or CLIから設定するだけ(CFnは未対応) パイプラインの構築、保守が不要に!
Icebergテーブルへの連携 • DynamoDBのデータはIcebergテーブルに連携されてAthenaでアクセス 可能 • 半構造データから表形式に変換された形でデータ連携される
ZeroETLのログもIcebergテーブルに ZeroETLを設定すると自動で zetl_integration_table_state というテーブル ができる。 ここではステータスや、実行履歴、レコードの変更数なども管理される。
Apache Icebergとは? Apache IcebergとはOpen Table Formatのひとつ。 - 個々のファイルの集合をあたかも一つのテーブルのように扱える。 - 従来のデータレイクにある課題を解決する次世代のフォーマットとして注目されてい
る。 ZeroETLの観点からの、嬉しい特徴として以下の2つがある - レコードの追加、更新、削除を容易に効率的に行う - スキーマの変更が容易 ここでは紹介しませんが、Icebergには他にも様々な魅力的な機能があります。
Icebergで何が嬉しい? レコードの追加、更新、削除を容易に効率的に行う - レコードの差分更新(Insert, Update, Delete)が容易 - ZeroETLでは15分間隔でDynamoDBのデータの連携が可能になる スキーマの変更が容易 -
カラムの追加など(alter table change column…)が容易 - ZeroETLではDynamoDBに新しいAttributeが追加されると、自動 的にIcebergに新しいカラムが追加される
まとめ • データを抽出、変換、格納して扱いやすい形にすることを ETLという • ZeroETLを用いることで従来必要であったパイプライン構 築や保守のコストが低減される • データの連携先はS3のIcebergテーブルであり、15分間 隔での連携および自動的なスキーマ追従が可能