Referencia del SerDe
Athena admite varias bibliotecas SerDe (Serializer/Deserializer) que analizan datos de diferentes formatos de datos, como CSV, JSON, Parquet y ORC. Al crear una tabla en Athena, se puede especificar un SerDe que corresponda al formato en el que se encuentran los datos. Athena no admite SerDes personalizados.
Para utilizar un SerDe para crear una tabla
Para utilizar un SerDe al crear una tabla en Athena, utilice uno de los métodos a continuación:
-
Especifique
ROW FORMAT DELIMITED
y, a continuación, utilice instrucciones DDL para especificar delimitadores de campo, como en el ejemplo siguiente. Cuando especifiqueROW FORMAT DELIMITED
, Athena utiliza LazySimpleSerDe de forma predeterminada.ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ESCAPED BY '\\' COLLECTION ITEMS TERMINATED BY '|' MAP KEYS TERMINATED BY ':'
Para ver ejemplos de
ROW FORMAT DELIMITED
, consulte los siguientes temas:LazySimpleSerDe para CSV, TSV y archivos con delimitación personalizada
Consultas de registros de Amazon CloudFront
Consultas de los registros de Amazon EMR
-
Utilice
ROW FORMAT SERDE
para especificar explícitamente el tipo de SerDe que Athena debe usar al leer y escribir datos en la tabla. En el ejemplo siguiente, se especifica LazySimpleSerDe. Para especificar los delimitadores, utiliceWITH SERDEPROPERTIES
. Las propiedades especificadas porWITH SERDEPROPERTIES
corresponden a las declaraciones separadas (comoFIELDS TERMINATED BY
) en el ejemploROW FORMAT DELIMITED
.ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' WITH SERDEPROPERTIES ( 'serialization.format' = ',', 'field.delim' = ',', 'collection.delim' = '|', 'mapkey.delim' = ':', 'escape.delim' = '\\' )
Para ver ejemplos de
ROW FORMAT SERDE
, consulte los siguientes temas: