Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AWSサービスを活用したApache Icebergへのデータ連携
Search
fshuhe
June 05, 2025
Technology
14
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
880
Other Decks in Technology
See All in Technology
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
350
NDIでApple Vision Proにリアルタイム映像送信
jyouryuusui
0
130
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
170
How to Design Configuration for Rails Applications
willnet
1
840
JAWS-UGグッズ職人仕事の流儀
kentapapa
0
120
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
2
150
事業成長とデータ活用を止めないためのマネジメントへ挑戦
hiracky16
0
400
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
2
310
Active Record Connection Adaptersにおける長年の課題に再び取り組む
yahonda
0
200
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
740
夫婦で子育てするための育児標準化
codmoninc
PRO
0
460
Benchmarking Disaggregated Serving on vLLM + Dynamo with a Real Coding-Agent Workload
nttcom
1
200
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
580
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
570
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Raft: Consensus for Rubyists
vanstee
142
7.8k
Navigating Team Friction
lara
192
16k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
550
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Large-scale JavaScript Application Architecture
addyosmani
516
110k
How GitHub (no longer) Works
holman
316
150k
ラッコキーワード サービス紹介資料
rakko
1
5.4M
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 つのモードを選択できる