記事公開日
最終更新日
Amazon S3 Metadata と Amazon S3 Tablesを使ってデータをクエリしてみる

概要
DXソリューション営業本部の三浦です。
今回は、Amazon S3に新たに追加された Amazon S3 Metadata(現在一部リージョンでプレビュー提供、以下「S3 Metadata」)と Amazon S3 Tables(以下「S3 Tables」)を活用して、S3に保存されたオブジェクトのメタデータを簡単に検索・分析する方法をご紹介します。これらの機能を利用すると、AWSのサーバーレス型インタラクティブクエリサービスであるAmazon Athenaを通じて、S3オブジェクトのメタデータに対し標準的なSQLでクエリを実行できるようになります。
従来は、S3バケット内のファイル一覧の取得や属性の検索に多くの手間がかかっていました。しかしS3 Metadataは、ほぼリアルタイムでオブジェクトのメタデータを収集・インデックス化し、S3 Tablesとして蓄積します。そのため、メタデータの検索や分析が格段に効率化されます。
本記事では、Athenaを使用してメタデータクエリ(Athenaクエリ)を行う手順を具体的にご紹介します。ぜひ参考にしてみてください。
Amazon S3 メタデータは、ほぼリアルタイムで更新される、クエリが容易な自動生成のメタデータによって、S3 データを即座に発見して理解しやすくする最も簡単かつ迅速な方法です。
引用元:https://aws.amazon.com/jp/about-aws/whats-new/2024/12/amazon-s3-metadata-preview/
試してみる
1. 権限の追加
S3 Tableに関する操作を許可するためIAMポリシー「AmazonS3TablesFullAccess」をIAMユーザーにアタッチ
2. テーブルバケットの作成
S3のコンソール画面からテーブルバケットを選択し、「統合を有効にする」をクリック
統合が完了したら「テーブルバケットを作成」をクリック
「テーブルバケット名」を指定してテーブルバケットを作成
作成完了
3. メタデータの作成
従来通りにバケットを作成し、メタデータ化するファイル等をアップロード
「メタデータ - プレビュー」タブを選択し、「メタデータ設定を作成」をクリック
「送信先テーブルバケット」には1で作成したテーブルバケットを指定
「メタデータテーブル名」を入力し、「メタデータ設定を作成」をクリック
作成完了
4. Lake Formationで権限を追加
Lake Formationに移動して「Data Permissions」を選択し、「Principals」にアクセス権を与えるIAMユーザーを選択
「Named Data Catalog resources」にアクセス権許可の対象になる「S3 table」を選択
今回は検証なので「Table permissions」でSuper権限を付与
5. Athena を使ってクエリの実行
作成したテーブルバケットから「Athenaクエリエディタに移動」をクリックしAthenaのクエリエディタに移動
左側のタブにある「テーブル」から「テーブルをプレビュー」を選択
AthenaでS3テーブルバケットに対してクエリを実行しメタデータを取得する事ができた。
まとめ
もし「このサービスについて知りたい」「AWS環境の構築、移行」などのリクエストがございましたら、弊社お問合せフォームまでお気軽にご連絡ください! のちほど当ブログにてご紹介させていただくか、複雑な内容に関するお問い合わせの内容の場合には直接営業からご連絡を差し上げます。 また、よろしければ以下のリンクもご覧ください!
<QES関連ソリューション/ブログ>
<QESが参画しているAWSのセキュリティ推進コンソーシアムがホワイトペーパーを公開しました>
※Amazon Web Services、”Powered by Amazon Web Services”ロゴ、およびブログで使用されるその他のAWS商標は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。