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
AWSサービスを活用したApache Icebergへのデータ連携
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
fshuhe
June 05, 2025
Technology
5
0
Share
AWSサービスを活用したApache Icebergへのデータ連携
2025/6/2 のBigData Jawsの登壇資料です。
fshuhe
June 05, 2025
More Decks by fshuhe
See All by fshuhe
GPUをつかってベクトル検索を扱う手法のお話し~NVIDIA cuVSとCAGRA~
fshuhe
0
740
Other Decks in Technology
See All in Technology
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
150
小説執筆のハーネスエンジニアリング
yoshitetsu
0
790
AI時代における技術的負債への取り組み
codenote
1
1.8k
AWS DevOps Agentはチームメイトになれるのか?/ Can AWS DevOps Agent become a teammate
kinunori
6
770
はじめての MagicPod生成AI機能 機能紹介から活用方法まで
magicpod
0
120
Rapid Start: Faster Internet Connections, with Ruby's Help
kazuho
2
800
AIが自律的に働く時代へ Amazon Quick で実現するAIエージェント紹介
koheiyoshikawa
0
130
AWS Transform CustomでIaCコードを自由自在に変換しよう
duelist2020jp
0
160
「誰一人取り残されない」 AIエージェント時代のプロダクト設計思想 Product Management Summit 2026
mizushimac
1
1.7k
これからの「データマネジメント」の話をしよう
sansantech
PRO
0
150
AndroidアプリとCopilot Studioの統合
nakasho
0
160
20260428_Product Management Summit_Loglass_JoeHirose
loglassjoe
3
3.9k
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
840
Designing Powerful Visuals for Engaging Learning
tmiket
1
350
Git: the NoSQL Database
bkeepers
PRO
432
67k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
190
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Ruling the World: When Life Gets Gamed
codingconduct
0
210
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
140
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
780
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
510
Information Architects: The Missing Link in Design Systems
soysaucechin
0
900
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS サービスを活⽤した Apache Iceberg へのデータ連携 深⾒ 修平 (Shuhei Fukami) Analytics Solutions Architect Amazon Web Services 1
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 2 Name︓ 深⾒修平(Shuhei Fukami) Title︓ Analytics Specialist Solutions Architect 趣味︓ ピザ焼き 窯があるのに焼く⼈間がいない時ぜひお呼びください 窯を買ったので窯がない⼈もぜひお声がけください 好きなOSS: OpenSearch, Iceberg ⾃⼰紹介
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 1.Apache Iceberg テーブルのレコード操作に必要な処理 2.AWS における Iceberg テーブルへの書き込みパターン • Apache Iceberg に対応したエンジンの利⽤ • Iceberg テーブルへの Zero-ETL 統合 • Amazon Data Firehose の Iceberg テーブル連携機能 アジェンダ 3
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Apache Iceberg テーブルの レコード操作に必要な処理 4
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 5 Iceberg テーブルのアーキテクチャ Manifest list Manifest File Manifest File Manifest File Data Files Data Files Data Files Metadata layer Manifest list Iceberg catalog Data layer db1.table1 metadata pointer Metadata file s0 s1 Metadata file s0 • Iceberg カタログ • 最新のメタデータファイル (=テーブルの状態)を記録 • テーブル更新時は metadata file の場所を アトミックに更新する機能を備える • メタデータレイヤー • メタデータファイルを元にツリー構造を辿るこ とで、歴代のスキーマやスナップショット履歴 などへの効率的なアクセスを提供する • データレイヤー • テーブルの実レコード、 削除ファイル(Merge on Read ⽤)を保持
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 6 Iceberg テーブルのアーキテクチャ Manifest list Manifest File Manifest File Manifest File Data Files Data Files Data Files Metadata layer Manifest list Iceberg catalog Data layer db1.table1 metadata pointer Metadata file s0 s1 Metadata file s0 • Iceberg カタログ • 最新のメタデータファイル (=テーブルの状態)を記録 • テーブル更新時は metadata file の場所を アトミックに更新する機能を備える • メタデータレイヤー • メタデータファイルを元にツリー構造を辿るこ とで、歴代のスキーマやスナップショット履歴 などへの効率的なアクセスを提供する • データレイヤー • テーブルの実レコード、 削除ファイル(Merge on Read ⽤)を保持 • データ書き込みなどレコードの操作を⾏う際には、 実データだけでなくそれに 紐づけた形でメタデータレイヤーへの 書き込みやカタログコミットが必要 • ファイルを S3 にPUT するだけではすまない • Iceberg に対応したエンジンを⽤いて適切な レコード操作のための⼀連の処理が必要
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの 書き込みパターン 7
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの書き込みパターン 8 1. Apache Iceberg に対応したエンジンの利⽤ 2. Iceberg テーブルへの Zero-ETL 統合 3. Amazon Data Firehose の Iceberg テーブル連携機能
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの書き込みパターン 9 1. Apache Iceberg に対応したエンジンの利⽤ データソース lambda AWS Lambda MSK Connect Aws Glue Amazon EMR Managed Service for Apache Flink Apache Iceberg Amazon S3 Tables General Purpose S3 PyIceberg Kafka Connect (Iceberg sink connector) AWS Glue Data Catalog Amazon Athena
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの書き込みパターン 10 1. Apache Iceberg に対応したエンジンの利⽤ データソース lambda AWS Lambda MSK Connect Aws Glue Amazon EMR Managed Service for Apache Flink Apache Iceberg Amazon S3 Tables General Purpose S3 PyIceberg Kafka Connect (Iceberg sink connector) AWS Glue Data Catalog Amazon Athena • ⾃前での実装が必要だが柔軟な実装が可能 • エンジン毎に対応しているデータソースや Iceberg に関する機能が異なるため 要件に合わせた選択が重要 • CoW/MoR 対応や 動的な ShemaEvolution など
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの書き込みパターン 11 2. AWS Glue Data Catalog に登録された Iceberg テーブルへの Zero-ETL 統合 Amazon DynamoDB Facebook Ads Instagram Ads Salesforce SAP OData ServiceNow 3rd Party tools Zero-ETL 統合 lambda Apache Iceberg S3 Bucket AWS Glue Data Catalog データソース ターゲット Zendesk Zoho https://docs.aws.amazon.com/glue/latest/dg/zero-etl-common-integration-tasks.html
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの書き込みパターン 12 2. AWS Glue Data Catalog に登録された Iceberg テーブルへの Zero-ETL 統合 Amazon DynamoDB Facebook Ads Instagram Ads Salesforce SAP OData ServiceNow 3rd Party tools Zero-ETL 統合 lambda Apache Iceberg S3 Bucket AWS Glue Data Catalog データソース ターゲット • ノーコードで Iceberg テーブルへの データ連携が可能 • データ連携の頻度は15分 • Partition の設定も可能 • デフォルトではDDB のパーティションキーを partition column として利⽤ • Timestamp などユーザーがカラムを指定することも 可能 • Identity, Year, Month, Day, Hour などのTransform 関数が利⽤可能 • Point-in-time recovery (PITR) の 有効化が必要 • 連携元のテーブルのサイズ上限は 2TB https://docs.aws.amazon.com/glue/latest/dg/zero-etl-integration-dynamodb-draken.html
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. AWS における Iceberg テーブルへの書き込みパターン 13 2. AWS Glue Data Catalog に登録された Iceberg テーブルへの Zero-ETL 統合 Amazon DynamoDB Facebook Ads Instagram Ads Salesforce SAP OData ServiceNow 3rd Party tools Zero-ETL 統合 lambda Apache Iceberg S3 Bucket AWS Glue Data Catalog データソース ターゲット • ノーコードで Iceberg テーブルへの データ連携が可能 • Glue Connection の作成が必要 • テーブルの作成、カタログへの登録から 定期的なデータ連携を⾃動的に実施 • Transform 関数 を⽤いた Partition 設定が可能 • Identity, Year, Month, Day, Hour • 連携頻度など設定できるパラメータは ソースによって異なることに注意 https://docs.aws.amazon.com/glue/latest/dg/zero-etl-common-integration-tasks.html
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 14 Amazon Data Firehose Apache Iceberg Tables in S3 / S3 tables GA Preview • Lambda での変換も利⽤可能 AWS における Iceberg テーブルへの書き込みパターン 3. Amazon Data Firehose の Iceberg テーブル連携機能 AWS Glue Data Catalog
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. まとめ 15 • Iceberg テーブルへのデータの書き込みではメタデータの更 新を含むトランザクション処理が必要 データファイルをストレージに置くだけではすまない • AWS では Iceberg の操作に対応した複数の⽅法が⽤意され ている • 実装コストが低い選択肢も含めて 要件にあった適切な選択をするのが重要
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Appendix Amazon Data Firehose の詳細 16
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Amazon Data Firehose の Iceberg テーブルへの配信 17 Amazon Data Firehose AWS Glue Data Catalog Iceberg Tables Direct PUT ソースの場合 Direct PUT • Glue Data Catalog で管理される Iceberg テーブルをターゲットに選択可能 • ソース(流れてくるストリームデータ)のスキーマ への動的な Schema Evolution は現時点で未対応 • Iceberg テーブル側のスキーマ変更には対応 • Merge on Read をサポート • 1つのストリームで複数のテーブルに配信も可能 • JQ / Lambda 変換でフィールドの値をもとに ターゲットテーブルを振り分ける • AppendOnly=True に設定することでスループットの ⾃動スケールが可能 • Exactly-once データ加工失敗時 ソースレコードのバック アップ(オプション) Backup S3 bucket (optional) Failure S3 bucket Amazon Kinesis Amazon MSK
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. Appendix Copy on write と Merge on Read 18
© 2026, Amazon Web Services, Inc. or its affiliates. All
rights reserved. 19 Copy-on-Write と Merge-on-Read Copy-on-Write (CoW) 書き込み / 読み取り処理間 のトレードオフ 読み取りの 計算コストは無影響 書き込みの 計算コストが増加 書き込み / 読み取り処理間 のトレードオフ 読み取りの オーバーヘッドが発⽣ 書き込みの 計算コストが少ない Data file Data file ファイル全体を書き換え Data file 差分を追加 Log file Merge-on-Read (MoR) Iceberg では、レコードの更新 / 削除時に 2 つのモードを選択できる