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
Amazon S3 Tables + Amazon Athena / Apache Iceberg
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kaoru
April 13, 2025
Technology
580
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amazon S3 Tables + Amazon Athena / Apache Iceberg
LT 2025/4/12
Kaoru
April 13, 2025
Transcript
27 slides
Amazon S3 Tables + Amazon Athena / Apache Iceberg
LT Iceberg の語源から 2025/4/12
©2025 Voicy, Inc. 自己紹介 名前:織田 薫(かおる) 会社:株式会社Voicy 職業:SRE ぺんぎん好き mixi2:@penpen
©2025 Voicy, Inc.
©2025 Voicy, Inc. https://prtimes.jp/main/html/rd/p/000000390.000021111.html
©2025 Voicy, Inc. Voicyのアーキテクチャ • FidyTools(https://findy-tools.io/companies/voicy/78/13)
©2025 Voicy, Inc. Iceberg の語源 • オランダ語の ijsberg •
ijs => ice = 氷 • berg => berg = 山
©2025 Voicy, Inc. 氷山
©2025 Voicy, Inc. 氷山とペンギン
©2025 Voicy, Inc. なぜ、Iceberg なのか? • 「氷山(iceberg)」の一角のように、「目に見える データは一部だけで、その下に大きな構造が隠れ ている」という発想に基づいて名付けられたそう
©2025 Voicy, Inc. Iceberg のテーブル構造
©2025 Voicy, Inc. メタデータファイル(metadata.json) • テーブル全体の基本情報と履歴管理を担うファイ ル • 最新スナップショットのID、スキーマ定義、パーティ
ション方式などを含む • Icebergのテーブルルートに置かれる
©2025 Voicy, Inc. メタデータファイル(metadata.json)
©2025 Voicy, Inc. スナップショットファイル(snapshot-*.json) • テーブルのある時点の状態を記録 • どのマニフェストを参照しているか、どのような操 作(append,
overwrite, delete)だったかが記録され る
©2025 Voicy, Inc. スナップショットファイル(snapshot-*.json)
©2025 Voicy, Inc. マニフェストファイル(manifest-*.avro) • 実際のデータファイル(Parquetなど)のリスト • 各データファイルの行数、パーティションキー、 min/max値、nullの有無などの統計情報が含まれ
る • クエリエンジンはこれを使って、プルーニング(ファ イルスキップ)などの最適化が可能になる
©2025 Voicy, Inc. マニフェストファイル(manifest-*.avro)
©2025 Voicy, Inc. S3 Tables では 引用:https://medium.com/aws-tip/deep-dive-into-new-amazon-s3-tables-4e1de56394eb
©2025 Voicy, Inc. S3 Tables では 引用:https://medium.com/aws-tip/deep-dive-into-new-amazon-s3-tables-4e1de56394eb
©2025 Voicy, Inc. Parquet の語源 • フランス語の parquet •
寄せ木細工の床、という意味 • 読み方は、パーケイ or パルケ
©2025 Voicy, Inc. なぜ、Parquet なのか? • 列指向ストレージでは、データを行単位ではなく 「列ごと」にまとめて格納。これはちょうど、いろん な種類の木材を組み合わせてパターン化された
寄せ木細工の床を作るのに似ており、それがこの 形式の名前の由来になってる
©2025 Voicy, Inc. Parquet のファイル構造
©2025 Voicy, Inc. File Header • 固定のマジックバイト列 "PAR1" から始まる
• フォーマット識別用
©2025 Voicy, Inc. Row Group • データをある程度のサイズ(通常は128MBなど)で ブロック単位に区切ったもの •
1 Row Group = 全列のデータのまとまり • 複数のRow Groupで1ファイルを構成することがで きる
©2025 Voicy, Inc. Column Chunk • Row Group 内で
各列ごとのデータを保持 • 列指向なので、列ごとに連続したデータを保存し、 圧縮・エンコードがしやすい
©2025 Voicy, Inc. Pages • Column Chunk は 複数の
Page に分割される ◦ Data Page:実データを保持 ◦ Dictionary Page(任意):辞書圧縮時にキーと 値のマッピングを保持 ◦ Index Page:高速アクセス用
©2025 Voicy, Inc. File Footer • ファイル末尾にある重要なメタ情報セクション • 内容:
◦ スキーマ情報(列名、型、ネスト構造) ◦ 各 Row Group のオフセット、サイズ、列統計情 報(min/max, null count) ◦ 作成ツールのバージョンなど
©2025 Voicy, Inc. ご清聴 ありがとうございました!
More Decks by Kaoru
See All by Kaoru
古今東西SRE
okaru
2
310
Qiita Bash アドカレ LT #1
okaru
0
310
Mobile App with AI Meetup #1
okaru
0
160
JAWS-UG SRE支部 #14 LT
okaru
0
300
ゆるSRE #11 LT
okaru
1
1.1k
AI Engineering Summit Pre Event LT #10
okaru
2
860
AIエージェント実践集中コース LT
okaru
1
330
技術選定を突き詰める 懇親会LT
okaru
2
1.5k
JAWS-UG SRE支部 #11 LT EKS Auto Mode をやりたい
okaru
0
79
Other Decks in Technology
See All in Technology
Kiro 入門 (1 つのエージェントを、どの画面からでも) | 目指せ Kiro マスター 01
inariku
PRO
6
1.8k
「任されビリティ」で引き受けて「よしなりてぃ」に頼らず任せる / Accept tasks with "makasarebility" and hand them over without relying on "yoshinarily"
pauli
0
570
Where Should Platform Complexity Live? Lessons from a Cross-Team PR Preview Platform
taiki45
0
110
DevOps Agentにあらゆるセキュリティインシデントのトリアージを任せた件
jirtosterone
1
150
Biohub - Cell Tracking During Development 5th place solution
rist
0
160
Agent Harnessはどう作る?事例から学ぶAI Agentの設計思想
sergicalsix
0
300
Steering と Hook (チームの決まりを守らせる) | 目指せ Kiro マスター 06
inariku
PRO
2
130
AI時代における医療情報システムのセキュリティ / Security of Healthcare IT Systems in the AI Era
henryofficial
0
170
変更差分を読むために環境を整備しよう
pipepasta
1
300
落とし穴にハマってわかった 開発生産性を測るときに気をつけたいこと
munakata
2
200
AIが会計業務の伴走者に。 マネーフォワード クラウド会計MCPサーバーで実現するAI前提の新しい業務プロセス
nobitabashi
0
150
市販IoT機器や自作IoT機器とHomeAssistantを駆使して家の電気代をできる限り見える化する方法の考案
harutiro
0
130
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
3
12k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
680
YesSQL, Process and Tooling at Scale
rocio
174
15k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
380
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Utilizing Notion as your number one productivity tool
mfonobong
4
640
Large-scale JavaScript Application Architecture
addyosmani
516
110k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
6
920
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
How to Ace a Technical Interview
jacobian
280
24k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
660