Athena でテーブルを作成するときに SerDe を使用するには、以下の方法のいずれかを使用します。
-
以下の例にあるように、
ROW FORMAT DELIMITED
を指定してから、DDL ステートメントを使用してフィールド区切り文字を指定します。ROW FORMAT DELIMITED
を指定すると、Athena がデフォルトで LazySimpleSerDe を使用します。ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ESCAPED BY '\\' COLLECTION ITEMS TERMINATED BY '|' MAP KEYS TERMINATED BY ':'
ROW FORMAT DELIMITED
の例については、次のトピックを参照してください。 -
ROW FORMAT SERDE
は、テーブルへのデータの読み書きを行うときに Athena が使用する必要がある SerDe のタイプを明示的に指定します。以下の例は、LazySimpleSerDe を指定しています。区切り文字を指定するには、WITH SERDEPROPERTIES
を使用します。WITH SERDEPROPERTIES
によって指定されたプロパティは、ROW FORMAT DELIMITED
例の個別のステートメント (FIELDS TERMINATED BY
など) に対応します。ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' WITH SERDEPROPERTIES ( 'serialization.format' = ',', 'field.delim' = ',', 'collection.delim' = '|', 'mapkey.delim' = ':', 'escape.delim' = '\\' )
ROW FORMAT SERDE
の例については、次のトピックを参照してください。