この記事で伝えたいこと(ポイント)
Amazon S3に、分析ワークロードに最適化された新しいストレージオプションが登場しました!その名も「Amazon S3 Tables」。S3の優れた耐久性やスケーラビリティを活かしつつ、表形式データのクエリをより効率的に実行できます。
はじめに
この記事では、Amazon S3 Tablesについて解説します。
サービスの説明
Amazon S3 Tablesは、分析ワークロード向けに最適化された、Amazon S3の新しいストレージオプションです。Apache Iceberg形式の表形式データを保存し、Amazon Athena、Amazon EMR、Apache Sparkなどのクエリエンジンで簡単にクエリを実行できます。
S3 Tablesは、S3の耐久性、可用性、スケーラビリティ、およびパフォーマンス特性をそのまま提供します。さらに、クエリのパフォーマンスを最大化し、コストを最小限に抑えるためにストレージを自動的に最適化します。
補足:Apache Iceberg
Apache Icebergは、大規模な分析データセット向けに設計されたオープンソースのテーブル形式です。 ACIDプロパティをサポートし、同時実行性とデータの整合性を確保します。 スキーマの進化、タイムトラベル、隠しパーティションなどの機能により、データレイクでの柔軟なデータ管理が可能です。
S3 Tablesでは、以下の概念が重要になります。
- テーブルバケット: テーブルを格納するための特別なS3バケットです。
- テーブル: テーブルバケット内に作成される、Icebergテーブルです。
- 名前空間: テーブルバケット内でテーブルを整理するためのものです。
S3 Tablesは、AWS CLIやAWS SDK、S3コンソールから操作できます。テーブルの作成、更新、削除、データの読み込みなどが可能です。また、テーブルのメンテナンス機能も提供されており、古いデータファイルを削除するなどしてストレージを効率的に利用できます。
どのリージョンで利用できるか
Amazon S3 Tablesは、以下のリージョンで利用できます。
- US East (Ohio) us-east-2
- US East (N. Virginia) us-east-1
- US West (Oregon) us-west-2
どんな時に利用できるか
Amazon S3 Tablesは、Amazon Athena、Amazon EMR、Apache Sparkなどのクエリエンジンと連携して使用できます。
補足:Amazon Athena
Amazon Athenaは、標準SQLを使用してAmazon S3のデータを簡単に分析できるインタラクティブなクエリサービスです。
補足:Amazon EMR
Amazon EMRは、Hadoopフレームワークを使用してビッグデータを分散処理するためのマネージドサービスです。
補足:Apache Spark
Apache Sparkは、大規模データ処理のための高速で汎用性の高いクラスターコンピューティングシステムです。
まとめ
Amazon S3 Tablesは、S3の優れた特性を活かしつつ、分析ワークロードに最適化されたストレージオプションです。Apache Iceberg形式の表形式データを効率的に保存し、クエリを実行できます。
参考文献
- New – Amazon S3 Tables – storage optimized for analytics workloads - AWS
- What is Apache Iceberg? - AWS
- S3 Tables のリージョンとクォータ - Amazon S3
関連サービス
Amazon S3
- 【AWS】S3静的ウェブサイトホスティングがAWS Amplifyで強化されたんだぜぇ〜ワイルドだろぉ〜
- 【AWS】手を動かして学ぶMountpoint for S3
- 【AWS】Amazon S3 Object Lambdaを検証!