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
230
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
データ基盤でのコンテナ活用事例 / jawsug-niigata21-data-platform-with-container
kasacchiful
0
75
AWSのコンテナサービス / jawsug_niigata21_aws_container_services
kasacchiful
0
63
Amazon S3 TablesとAmazon S3 Metadataを動かしてみた / 20250125-niigata-5min-tech-lt
kasacchiful
0
24
dbt coreとFargateでデータ変換 / 20240928-jawsug-toyama-hokuriku-shinkansen
kasacchiful
1
110
What we keep in mind when migrating from Serverless Framework to AWS CDK and AWS SAM
kasacchiful
1
380
AWSでIcebergを使ってデータウェアハウスを構築してみる / 20240810-jawsug-akita
kasacchiful
0
48
サーバーレスパターンを元にAWS CDKでデータ基盤を構築する / 20240731_classmethod_odyssey_online_build_a_data_infrastructures_using_aws_cdk_based_on_serverless_patterns
kasacchiful
0
520
AWS IoT 1-clickがサービス終了するので、SORACOMに移行した話 / 20240518-jawsug-niigata-iotlt-niigata
kasacchiful
0
290
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
610
Other Decks in Programming
See All in Programming
Effective Signals in Angular 19+ Rules and Helpers
manfredsteyer
PRO
0
170
CTFのWebにおける⾼難易度問題について
hamayanhamayan
1
880
Go言語での実装を通して学ぶ、高速なベクトル検索を支えるクラスタリング技術/fukuokago-kmeans
monochromegane
1
130
SwiftUIのObservationツールの挙動をテストしてみた
kenshih522
0
110
PHPでお金を扱う時、終わりのない 謎の1円調査の旅にでなくて済む方法
nakka
3
930
Goで作るChrome Extensions / Fukuoka.go #21
n3xem
2
2.5k
Functional APIから再考するLangGraphを使う理由
os1ma
4
630
AIエージェントを活用したアプリ開発手法の模索
kumamotone
1
700
Denoでフロントエンド開発 2025年春版 / Frontend Development with Deno (Spring 2025)
petamoriken
1
1.2k
Compose Navigation実装の見通しを良くする
hiroaki404
0
130
「その気にさせる」エンジニアが 最強のリーダーになる理由
gimupop
3
450
体得しよう!RSA暗号の原理と解読
laysakura
3
480
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
244
12k
How to Ace a Technical Interview
jacobian
276
23k
Git: the NoSQL Database
bkeepers
PRO
429
65k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
Scaling GitHub
holman
459
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
The Language of Interfaces
destraynor
156
24k
Rails Girls Zürich Keynote
gr2m
94
13k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
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