サポートされる SerDes とデータ形式 - Amazon Athena

サポートされる SerDes とデータ形式

Athena がテーブルの作成とデータのクエリでサポートしているのは、CSV、TSV、カスタム区切り、JSON の各形式のデータ、Hadoop 関連形式 (ORC、Apache Avro、Parquet) のデータ、および Logstash からのログ、AWS CloudTrail ログ、Apache WebServer ログです。

注記

このセクションにリストされている形式は、Athena がデータの読み取りに使用します。Athena が CTAS クエリの実行時にデータの書き込みに使用する形式については、「クエリ結果からのテーブルの作成 (CTAS)」を参照してください。

Athena でこれらの形式のテーブルを作成し、クエリを実行するには、シリアライザー/デシリアライザークラス (SerDe) を指定して、使用する形式とデータの解析方法を Athena に指示します。

この表には、Athena でサポートされているデータ形式と、それらに対応する SerDe ライブラリがリストされています。

SerDe は、Athena で使用されているデータカタログにデータの処理方法を指示するカスタムライブラリです。SerDe タイプは、Athena で CREATE TABLE ステートメントの ROW FORMAT 部分に SerDe タイプを明示的にリストすることによって指定します。Athena は、特定のタイプのデータ形式にデフォルトでいくつかの SerDe タイプを使用するため、SerDe 名を省略できる場合もあります。

サポートされるデータ形式と SerDes
[Data format] (データ形式) 説明 Athena でサポートされる SerDe タイプ
Amazon Ion Amazon Ion は JSON のスーパーセットであるリッチタイプの自己記述データ形式で、Amazon によって開発およびオープンソース化されています。 Amazon Ion Hive SerDe を使用します。

Apache Avro

Hadoop にデータを保存する形式であり、JSON ベースのスキーマをレコード値として使用します。

Avro SerDe を使用します。

Apache Parquet

Hadoop のデータの列指向ストレージ形式。

Parquet SerDe および SNAPPY 圧縮を使用します。

Apache WebServer ログ

Apache WebServer にログを保存する形式。

Grok SerDe または Regex SerDe を使用します。

CloudTrail ログ

CloudTrail にログを保存するための形式。

  • CloudTrail ログのフィールドの大半は、CloudTrail SerDe を使用してクエリします。

  • サービスに依存する形式を持ついくつかのフィールドで OpenX JSON SerDe を使用します。詳細については、「CloudTrail SerDe」を参照してください。

CSV (カンマ区切り値)

CSV のデータでは、各行がデータレコードを表し、各レコードはカンマで区切られた 1 つ以上のフィールドで構成されます。

カスタム区切り

この形式のデータでは、各行がデータレコードを表し、レコード間は 1 文字のカスタム区切り文字で区切られます。

CSV、TSV、およびカスタム区切りファイルの LazySimpleSerDe を使用し、1 文字のカスタム区切り文字を指定します。

JSON (JavaScript Object Notation)

JSON データでは、各行がデータレコードを表します。各レコードは属性/値のペアと配列で構成され、それぞれがカンマで区切られます。

Logstash ログ

Logstash にログを保存する形式。

Grok SerDe を使用します。

ORC (Optimized Row Columnar)

Hive データの最適化された列指向ストレージの形式。

ORC SerDe および ZLIB 圧縮を使用します。

TSV (タブ区切り値)

TSV のデータでは、各行がデータレコードを表し、各レコードはタブで区切られた 1 つ以上のフィールドで構成されます。

CSV、TSV、およびカスタム区切りファイルの LazySimpleSerDe を使用し、区切り文字を FIELDS TERMINATED BY '\t' に指定します。