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
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 202...
Search
kasacchiful
February 01, 2025
Programming
0
360
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
2025/02/01 (土) JAWS-UG栃木支部#0 にて発表した資料。
勉強会サイト
https://jawsug-tochigi.connpass.com/event/342140/
kasacchiful
February 01, 2025
Tweet
Share
More Decks by kasacchiful
See All by kasacchiful
Amazon Q Developer for CLI を使って PHP Conference 新潟 2025 参加者向けにグルメサイトを構築した話 / 20250620niigata-5min-tech
kasacchiful
0
55
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
0
310
生成AIでメタデータを生成してみた / 20250525generate-metadata-using-generative-ai
kasacchiful
0
55
Strands Agents SDK で AIエージェント作成 を試してみた / 20250525strands-agents
kasacchiful
0
170
いろんな世界を見てみよう / 20250508ninno_tech_fest
kasacchiful
0
32
Amazon Q Developer for CLIのある生活 / 20250427ai_craft_hacks_niigata1
kasacchiful
1
83
AWSのコンテナサービス / jawsug-akita-aws-container-services
kasacchiful
0
71
データ基盤でのコンテナ活用事例 / jawsug-akita-data-platform-with-container
kasacchiful
0
77
データ基盤でのコンテナ活用事例 / jawsug-niigata21-data-platform-with-container
kasacchiful
0
120
Other Decks in Programming
See All in Programming
PipeCDのプラグイン化で目指すところ
warashi
1
280
What's new in AppKit on macOS 26
1024jp
0
110
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
860
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
2
14k
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
430
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
530
XP, Testing and ninja testing
m_seki
3
250
ご注文の差分はこちらですか? 〜 AWS CDK のいろいろな差分検出と安全なデプロイ
konokenj
2
100
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
400
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
120
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
840
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
140
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.6k
Why Our Code Smells
bkeepers
PRO
336
57k
Making Projects Easy
brettharned
116
6.3k
Done Done
chrislema
184
16k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Fireside Chat
paigeccino
37
3.5k
Balancing Empowerment & Direction
lara
1
430
Building Applications with DynamoDB
mza
95
6.5k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
310
Transcript
Amazon S 3 TablesとAmazon S 3 Metadataを触ってみた 2 0 2
5 / 0 2 / 0 1 JAWS-UG栃 木 #0 笠原 宏
自己 紹介 2 • 好きなAWSサービス ◯ S 3 , Lambda,
Step Functions • コミュニティ運営 ◦ JAWS-UG新潟 / Python機械学習勉強会 in 新潟 ◦ Cloudflare Meetup Niigata ◦ JaSST新潟 / ASTER正会員 / SWANII / etc. • AWS Community Builder ◦ Serverless (since 2 0 2 2 ) ◦ 笠原 宏 (@kasacchiful) ◦ クラスメソッド株式会社データ事業本部 ◦ JAWS-UG新潟 支 部 ◦ 新潟県新潟市在住 2
JAWS-UG 新潟 開催形式 3 本編勉強会 • 不定期開催 / 2〜3時間程度 /
オフライン • 事前にテーマ決めて開催 プチキャッチアップ会 • 毎週 木 曜夜21時 / 1時間程度 / オンライン • その場で気になる記事 見 たり、お悩み相談受けたり
Amazon S 3 Tables を触ってみた 4
Amazon S 3 Tables 5 AWS re:Invent 2 0 2
4 で公開 • Apache Iceberg形式に最適化され たオブジェクトストア • Athena, EMR, Spark等からクエリ 可能 • 汎 用 ストレージと 比 べて最 大 3倍の クエリ性能 ・ 10倍のトランザク ション処理 IUUQTEFWDMBTTNFUIPEKQBSUJDMFTSFJOWFOUBNB[POTUBCMFT
東京リージョンでも使える 6 IUUQTEFWDMBTTNFUIPEKQBSUJDMFTBNB[POTUBCMFTUPLZPSFHJPOHB
Amazon S 3 Tables の使 用 例 7 ログデータをData Firehoseを使って、S
3 Tablesに保管し、Athenaで分析
実際に触ってみる 8 分析サービスとの統合を有効化すると、テーブルバケットが作成できる
実際に触ってみる 9 テーブル作成は、Spark Shellから spark.sql() を実 行 (今回はCloudShell上で) spark-shell \
--packages org.apache.iceberg:iceberg-spark-runtime- 3.5_2.12:1.6.1,software.amazon.s3tables:s3-tables-catalog-for-iceberg- runtime:0.1.3,software.amazon.awssdk:s3tables:2.29.26,software.amazon.awssdk:s3:2.29.26,so ftware.amazon.awssdk:sts:2.29.26,software.amazon.awssdk:kms:2.29.26,software.amazon.awssdk :dynamodb:2.29.26,software.amazon.awssdk:kms:2.29.26,software.amazon.awssdk:glue:2.29.26 \ --conf spark.sql.catalog.s3tablesbucket=org.apache.iceberg.spark.SparkCatalog \ --conf spark.sql.catalog.s3tablesbucket.catalog- impl=software.amazon.s3tables.iceberg.S3TablesCatalog \ --conf spark.sql.catalog.s3tablesbucket.warehouse=<Table bucketのARN> \ --conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions \ --conf spark.driver.extraJavaOptions="-Djava.security.manager=allow"
実際に触ってみる 10 テーブル作成は、Spark Shellから spark.sql() を実 行 (今回はCloudShell上で) spark.sql(" CREATE
NAMESPACE IF NOT EXISTS s3tablesbucket.sample_namespace ") spark.sql(" SHOW NAMESPACES IN s3tablesbucket ").show() spark.sql(" CREATE TABLE IF NOT EXISTS s3tablesbucket.sample_namespace.sales ( product string, amount int, timestamp timestamp ) using iceberg ") spark.sql(" INSERT INTO s3tablesbucket.sample_namespace.sales ( product, amount, timestamp ) VALUES ( 'Laptop', 1200, '2023-12-01 10:30:00' ) “) ... spark.sql(" SELECT * FROM s3tablesbucket.sample_namespace.sales ").show()
実際に触ってみる 11 テーブル作成は、Spark Shellから spark.sql() を実 行 (今回はCloudShell上で)
実際に触ってみる 12 Lake Formationで権限付与すれば、AthenaからSelectクエリ実 行 できる
補 足 : Spark導 入 が 面 倒なら、AWS CLIとAthenaで遊べます 13
テーブル作成までCLI、データ操作からAthena IUUQTEFWDMBTTNFUIPEKQBSUJDMFTTDIFNBEF fi OJUJPOTUBCMFTDSFBUFUBCMFXJUIBXTDMJ
Amazon S 3 Metadata を触ってみた 14
Amazon S 3 Metadata 15 AWS re:Invent 2 0 2
4 で公開 • S 3 オブジェクトのメタデータを 自 動的に Apache Icebergテーブルに保存 • S 3 オブジェクトのメタデータを効率的に クエリ可能 • メタデータ: オブジェクトキー ・ 作成/変更 時間、ストレージクラス、暗号化状態など • ユーザ定義メタデータも設定 ・ クエリ可能 • バックエンドでS 3 Tablesを利 用 IUUQTEFWDMBTTNFUIPEKQBSUJDMFTBNB[POTCVDLFUNFUBEBUBQSFWJFX
GAになりました 16 東京リージョンではまだ IUUQTEFWDMBTTNFUIPEKQBSUJDMFTHBBNB[POTNFUBEBUB
Amazon S 3 Metadata の使 用 例 17 画像ファイルのメタデータ情報を機械学習で読み取り、S 3
Metadataで保存
実際に触ってみる 18 先にテーブルバケットを作成しておく
実際に触ってみる 19 汎 用 バケット作成後、メタデータ設定を作成する
実際に触ってみる 20 テーブルバケットとテーブル名を指定。テーブルは事前に作成不要。
実際に触ってみる 21 Lake Formationで権限付与後、Athenaからメタデータテーブルが参照できる。
実際に触ってみる 22 汎 用 バケットの画像ファイルを配置して数分後、メタデータが確認できる
実際に触ってみる 23 アップロードやコピーの際に、ユーザ定義メタデータを編集できる
実際に触ってみる 24 ユーザ定義メタデータの値を取得することも可能
まとめ 25
まとめ 26 S 3 Tables と S 3 Metadata を
触ってみた • Amazon S 3 Tables ◦ Apache Iceberg形式に最適化されたオブジェクトストア • Amazon S 3 Metadata ◦ S 3 オブジェクトのメタデータを 自 動的にApache Icebergテーブル (S 3 Tables) に保存 • 分析 用 途に利 用 する際の選択肢の1つ ◦ Lake Formationを有効化する必要があるため、まずは別AWSアカウント上で検証を推奨
宣伝 27
JAWS-UG 新潟 #21 28 初 心 者向けコンテナハンズオン • 2025年3 月
15 日 ( 土 ) 13:00開始 ◦ 会場: Prototype Cafe (新潟市中央区)
JAWS-UG 新潟 #22 & JAWS-UG 北陸新幹線 #3 29 4 月
12 日 ( 土 ) に 上越で初開催 • 2025年4 月 12 日 ( 土 ) 13:00 開始 (予定) • 会場: ミュゼ雪 小 町 (上越市 高田 ) ◦ 北陸新幹線「上越妙 高 駅」乗り換え、えちごトキメキ鉄道「 高田 駅」から徒歩5分 ◦ 当 日 は「第100回 高田 城址公園 観桜会」開催期間中のため、例年通りならば新潟駅発の 臨時快速が出るはず (2025年1 月 現在は未定)
おしまい 30