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
S3 Metadataの仕組みと活用方法
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Shuya Sawa
December 21, 2024
Technology
0
37
S3 Metadataの仕組みと活用方法
JAWS-UG横浜 #78 AWS re:Invent 2024 re:Cap Storage
https://jawsug-yokohama.connpass.com/event/337179/
Shuya Sawa
December 21, 2024
Tweet
Share
More Decks by Shuya Sawa
See All by Shuya Sawa
Q Developerの最新動向
shuyasawa
3
610
Apache Icebergの解説とAWSでの運用
shuyasawa
1
120
S3のライフサイクルをAmazon Braketで最新化してみる
shuyasawa
0
17
Other Decks in Technology
See All in Technology
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
三菱UFJ銀行におけるエンタープライズAI駆動開発のリアル / Enterprise AI_Driven Development at MUFG Bank: The Real Story
muit
10
20k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
43k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.8k
【2026年版】生成AIによる情報システムへのインパクト
taka_aki
0
190
競争優位を生み出す戦略的内製開発の実践技法
masuda220
PRO
2
500
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
opsmethod第1回_アラート調査の自動化にむけて
yamatook
0
330
男(監査)はつらいよ - Policy as CodeからAIエージェントへ
ken5scal
4
630
クラウド時代における一時権限取得
krrrr38
1
130
ソフトウェアアーキテクトのための意思決定術: Create Decision Readiness—The Real Skill Behind Architectural Decision
snoozer05
PRO
27
7.5k
WBCの解説は生成AIにやらせよう - 生成AIで野球解説者AI Agentを実現する / Baseball Commentator AI Agent for Gemini
shinyorke
PRO
0
290
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
How to train your dragon (web standard)
notwaldorf
97
6.5k
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
140
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
280
Between Models and Reality
mayunak
1
210
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
300
Into the Great Unknown - MozCon
thekraken
40
2.3k
SEO for Brand Visibility & Recognition
aleyda
0
4.3k
Paper Plane (Part 1)
katiecoart
PRO
0
5k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
180
Information Architects: The Missing Link in Design Systems
soysaucechin
0
810
Transcript
S3 Metadataの仕組みと活用方法 2024/12/21 JAWS Yokohama Storage re:Cap IBM Japan /
Shuya Sawa
2 S3 Metadata (Preview)の発表
3 S3 Metadata (Preview)の発表 S3のメタデータに対してAWSの分析サービスを通じて検索ができるようになった Before After Object メタデータ ETag:
68syw…… Object メタデータ ETag: 68syw…… Amazon EMR AWS Glue Amazon Redshift Amazon Athena S3 Metadata 分析サービスと統合し、 メタデータ検索が容易 になった × 直接検索不可 (DynamoDB などに書き出したり、S3イ ンベントリで代用) × 知るにはコンソール or API で1件ずつ × メタデータの用途がない
4 S3のメタデータとは? S3では保管するオブジェクトごとにメタデータが付与されている Object システム定義メタデータ ETag: 68syw…… ユーザー定義メタデータ Hoge: FugaFuga
実は支払っているS3料金は Object自体 + メタデータ の合計サイズで課金 Amazon S3 共通 ⚫ 2 KBまで ⚫ オブジェクトアップロードの時のみ設定が可能 システム定義メタデータ ⚫ AWSが自動で付与するメタデータ ⚫ ユーザーが変更可能なデータが一部ある ⚫ メタデータに基づいてストレージクラス等が決定する ⚫ Etagを使用した条件付き書き込みもPre:Inventのアップ デート ユーザー定義メタデータ ⚫ ユーザーが自由に設定できるメタデータ
5 システム定義メタデータ 名 説明 変更可否 Date 現在の日付と時刻 × Cache-Control キャッシュポリシーを指定するために使用される一般的なヘッダーフィールド
〇 Content-Disposition オブジェクトのプレゼンテーション情報 〇 Content-Length オブジェクトのサイズ (バイト単位) × Content-Type オブジェクトのタイプ 〇 Last-Modified オブジェクト作成日または最終更新日 × ETag オブジェクトの特定のバージョン アップロードの仕方やオブジェクトに基づいて計算される × x-amz-server-side-encryption オブジェクトでサーバー側の暗号化が有効か 〇 x-amz-checksum-crc32 オブジェクトのチェックサム × x-amz-version-id オブジェクトのバージョンID × x-amz-delete-marker オブジェクトが削除マーカーかどうかのフラグ × x-amz-storage-class ストレージクラス 〇 x-amz-website-redirect- location 関連付けられたオブジェクトのリクエストを同じバケット内の別のオブジェクトまたは外部 URL にリダイレク トするヘッダー。 〇 x-amz-server-side-encryption- aws-kms-key-id オブジェクトの暗号化に使用された KMS キーの ID を示すヘッダー。 〇 x-amz-server-side-encryption- customer-algorithm クライアント側暗号化 (SSE−C) が有効か同課のフラグ 〇 x-amz-tagging オブジェクトのタグセット 〇
6 S3 Metadata (Preview)の仕組み S3 MetadataはS3 Table bucketのAWS分析サービス統合を利用してメタデータを検索できるようにしている S3 Standard
Object Amazon Athena Query S3 Metadata AWS Glue Data Catalog AWS Lake Formation Database Role Amazon Redshift Permission S3 Tables のAWS 分析サービスとの統合(プレビュー) S3TablesRoleFor LakeFormation s3tablecatalog Metadata用 S3 Table Bucket メタデータ
7 S3 Metadata (Preview)の仕組み S3 MetadataはS3 Table bucketのAWS分析サービス統合を利用してメタデータを検索できるようにしている Amazon Athena
Query AWS Glue Data Catalog AWS Lake Formation Database Role Amazon Redshift Permission S3 Tables のAWS 分析サービスとの統合(プレビュー) S3TablesRoleFor LakeFormation s3tablecatalog Metadata用 S3 Table Bucket S3 Metadata S3オブジェクトのメタデータを IceBerg形式に変換し、S3 Tables Bucketに格納 Table Bucketは事前 にユーザーが準備 汎用Bucket側でS3 Metadataの設定を行う S3 Standard Object メタデータ 12/20 Storage-JAWS #6 より S3 Tablesは昨年発表のS3 Express Onezoneのようにハード面で強化が 行われたわけではなく、Iceberg形式 の格納という目的に応じてソフト面で 最適化されたバケットとのこと
S3 Standard Object メタデータ 8 S3 Metadata (Preview)の仕組み S3 MetadataはS3
Table bucketのAWS分析サービス統合を利用してメタデータを検索できるようにしている Amazon Athena Query Role Amazon Redshift Permission S3 Metadata Database S3TablesRoleFor LakeFormation Metadata用 S3 Table Bucket AWS Lake Formation S3 Tables のAWS 分析サービスとの統合(プレビュー) s3tablecatalog AWS Glue Data Catalog
S3 Standard Object メタデータ Metadata用 S3 Table Bucket S3TablesRoleFor LakeFormation
S3 Tables のAWS 分析サービスとの統合(プレビュー) 9 S3 Metadata (Preview)の仕組み S3 MetadataはS3 Table bucketのAWS分析サービス統合を利用してメタデータを検索できるようにしている Amazon Athena Query Role Amazon Redshift Permission S3 Metadata AWS Lake Formation s3tablecatalog AWS Glue Data Catalog Database Roleを使ってData Catalog のDatabaseにアクセス カタログごとに許可設定 リソース リンク
10 S3 Metadata (Preview)の仕組み S3 MetadataはS3 Table bucketのAWS分析サービス統合を利用してメタデータを検索できるようにしている S3 Standard
Object Amazon Athena Query S3 Metadata AWS Glue Data Catalog AWS Lake Formation Database Role Amazon Redshift Permission S3 Tables のAWS 分析サービスとの統合(プレビュー) S3TablesRoleFor LakeFormation s3tablecatalog Metadata用 S3 Table Bucket メタデータ
必要なbucket作成 11 統合はON!
汎用バケット側でMetadata設定 12 先ほど作ったTable Bucket 自動生成 汎用Bucket側で設定
Metadata 設定完了 ! 13 完了!!
Lake Formation用のロール確認 14 AWS分析サービス統合をした結果 ロールが作成され、LakeFormationに アタッチされる
Lake Formation カタログ設定 15 AWS分析サービス統合によって生成 ロールまたはユーザーの許可設定を行う カタログ内のテーブルに対しても許可を入れる
Athenaコンソールから接続確認 16 メタデータのカラムを確認! カタログ・データベースが選択可能になっている
Athenaからクエリも成功! 17 試しに時間制約追加 絞りこみOK!
18 触ってみて気が付いたこと 他にも思いつく用途があればぜひ教えてください! これまでにないS3のメタデータを活用したサービスであるため、活用の幅は広がりそう ⚫ オブジェクトを更新時間区切りで検索 ⚫ 削除済みオブジェクト一覧を出す ⚫ オブジェクトサイズ分布分析
⚫ ユーザー定義メタデータで要約文章をいれておく … etc. メタデータ名 ≠ Data Catalog上のテーブルカラム名 システム定義メタデータ名 (一部抜粋) カタログ上のカラム名 Content-Type record_type Last-Modified record_timestamp ETag e_tag x-amz-delete-marker is_delete_marker x-amz-storage-class storage_class x-amz-server-side-encryption-aws-kms-key-id kms_key_arn AWS分析サービス統合 (プレビュー)がかなり使い勝手が良い ⚫ EMRに慣れていないので、一瞬でAthenaからクエリ叩けるのは嬉しい