Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Uso de la compresión en Athena

Modo de enfoque
Uso de la compresión en Athena - Amazon Athena

Athena admite una variedad de formatos de compresión para leer y escribir datos, como la lectura de una tabla que utiliza varios formatos de compresión. Por ejemplo, Athena puede leer correctamente los datos de una tabla que utiliza el formato de archivo Parquet cuando algunos archivos Parquet se comprimen con Snappy y otros archivos Parquet se comprimen con GZIP. El mismo principio se aplica a los formatos de almacenamiento ORC, archivo de texto y JSON.

Athena es compatible con los siguientes formatos de compresión:

  • BZIP2: formato que utiliza el algoritmo Burrows-Wheeler.

  • DEFLATE: algoritmo de compresión basado en LZSS y codificación Huffman. Deflate solo es relevante para el formato de archivo Avro.

  • GZIP: algoritmo de compresión basado en Deflate. Para las tablas de Hive en las versiones 2 y 3 del motor Athena y las tablas de Iceberg en la versión 2 del motor Athena, GZIP es el formato de compresión de escritura predeterminado para los archivos con formato de almacenamiento de archivo de texto y Parquet. Los archivos con el formato tar.gz no son compatibles.

  • LZ4: este miembro de la familia Lempel-Ziv 77 (LZ7) también se centra en la velocidad de compresión y descompresión en lugar de la máxima compresión de los datos. LZ4 tiene los siguientes formatos de encuadre:

    • LZ4 Raw/Unframed (LZ4 sin formato o sin encuadre): una implementación estándar y sin encuadre del formato de compresión de bloques LZ4. Para obtener más información, consulte Descripción del formato de bloques LZ4 en GitHub.

    • LZ4 framed (LZ4 con encuadre): la implementación con el encuadre habitual de LZ4. Para obtener más información, consulte Descripción del formato de encuadre LZ4 en GitHub.

    • LZ4 hadoop-compatible (LZ4 compatible con Hadoop): la implementación con Apache Hadoop de LZ4. Esta implementación completa la compresión LZ4 con la clase BlockCompressorStream.java.

  • LZO: formato que utiliza el algoritmo Lempel–Ziv–Oberhumer, que se centra en la alta velocidad de compresión y descompresión en lugar de la compresión máxima de datos. LZO tiene dos implementaciones:

    • LZO estándar: para obtener más información, consulte el resumen sobre LZO en el sitio web de Oberhumer.

    • LZO hadoop-compatible (LZO compatible con Hadoop): esta implementación completa el algoritmo de LZO con la clase BlockCompressorStream.java.

  • SNAPPY: algoritmo de compresión que forma parte de la familia Lempel-Ziv 77 (LZ7). Snappy se centra en la alta velocidad de compresión y descompresión en lugar de la máxima compresión de datos.

  • ZLIB: basado en Deflate, ZLIB es el formato de compresión de escritura predeterminado para archivos con el formato de almacenamiento de datos ORC. Para obtener más información, consulte la página zlib en GitHub.

  • ZSTD: el algoritmo de compresión de datos en tiempo real Zstandard es un algoritmo de compresión rápida que proporciona ratios altas de compresión. La biblioteca Zstandard (ZSTD) se proporciona como software de código abierto mediante una licencia BSD. ZSTD es la compresión predeterminada para las tablas de Iceberg. Cuando se escriben datos comprimidos con ZSTD, Athena utiliza el nivel 3 de compresión Zstandard. Para obtener información sobre el uso de los niveles de compresión ZSTD en Athena, consulte Uso de niveles de compresión de ZSTD.

nota

Athena no admite la escritura de archivos Parquet comprimidos con los formatos LZ4 o LZO. La lectura de estos formatos de compresión es compatible.

Athena es compatible con los siguientes formatos de compresión:

  • BZIP2: formato que utiliza el algoritmo Burrows-Wheeler.

  • DEFLATE: algoritmo de compresión basado en LZSS y codificación Huffman. Deflate solo es relevante para el formato de archivo Avro.

  • GZIP: algoritmo de compresión basado en Deflate. Para las tablas de Hive en las versiones 2 y 3 del motor Athena y las tablas de Iceberg en la versión 2 del motor Athena, GZIP es el formato de compresión de escritura predeterminado para los archivos con formato de almacenamiento de archivo de texto y Parquet. Los archivos con el formato tar.gz no son compatibles.

  • LZ4: este miembro de la familia Lempel-Ziv 77 (LZ7) también se centra en la velocidad de compresión y descompresión en lugar de la máxima compresión de los datos. LZ4 tiene los siguientes formatos de encuadre:

    • LZ4 Raw/Unframed (LZ4 sin formato o sin encuadre): una implementación estándar y sin encuadre del formato de compresión de bloques LZ4. Para obtener más información, consulte Descripción del formato de bloques LZ4 en GitHub.

    • LZ4 framed (LZ4 con encuadre): la implementación con el encuadre habitual de LZ4. Para obtener más información, consulte Descripción del formato de encuadre LZ4 en GitHub.

    • LZ4 hadoop-compatible (LZ4 compatible con Hadoop): la implementación con Apache Hadoop de LZ4. Esta implementación completa la compresión LZ4 con la clase BlockCompressorStream.java.

  • LZO: formato que utiliza el algoritmo Lempel–Ziv–Oberhumer, que se centra en la alta velocidad de compresión y descompresión en lugar de la compresión máxima de datos. LZO tiene dos implementaciones:

    • LZO estándar: para obtener más información, consulte el resumen sobre LZO en el sitio web de Oberhumer.

    • LZO hadoop-compatible (LZO compatible con Hadoop): esta implementación completa el algoritmo de LZO con la clase BlockCompressorStream.java.

  • SNAPPY: algoritmo de compresión que forma parte de la familia Lempel-Ziv 77 (LZ7). Snappy se centra en la alta velocidad de compresión y descompresión en lugar de la máxima compresión de datos.

  • ZLIB: basado en Deflate, ZLIB es el formato de compresión de escritura predeterminado para archivos con el formato de almacenamiento de datos ORC. Para obtener más información, consulte la página zlib en GitHub.

  • ZSTD: el algoritmo de compresión de datos en tiempo real Zstandard es un algoritmo de compresión rápida que proporciona ratios altas de compresión. La biblioteca Zstandard (ZSTD) se proporciona como software de código abierto mediante una licencia BSD. ZSTD es la compresión predeterminada para las tablas de Iceberg. Cuando se escriben datos comprimidos con ZSTD, Athena utiliza el nivel 3 de compresión Zstandard. Para obtener información sobre el uso de los niveles de compresión ZSTD en Athena, consulte Uso de niveles de compresión de ZSTD.

nota

Athena no admite la escritura de archivos Parquet comprimidos con los formatos LZ4 o LZO. La lectura de estos formatos de compresión es compatible.

Especificación de los formatos de compresión

Al escribir instrucciones CREATE TABLE o CTAS, puede especificar las propiedades de compresión que especifican el tipo de compresión que se utilizará cuando Athena escriba en esas tablas.

Especificación sin compresión

Las declaraciones CREATE TABLE permiten escribir archivos sin comprimir. Para escribir archivos sin comprimir, utilice la siguiente sintaxis:

  • CREATE TABLE (archivo de texto o JSON): en TBLPROPERTIES, especifique write.compression = NONE.

  • CREATE TABLE (Parquet): en TBLPROPERTIES, especifique parquet.compression = UNCOMPRESSED.

  • CREATE TABLE (ORC): en TBLPROPERTIES, especifique orc.compress = NONE.

Notas y recursos

  • Actualmente, Athena no reconoce las extensiones de archivo en mayúsculas, como .GZ o .BZIP2. Evite utilizar conjuntos de datos con extensiones de archivo en mayúsculas o cambie el nombre de las extensiones de archivo de datos a minúsculas.

  • Para datos en CSV, TSV y JSON, Athena determina el tipo de compresión a partir de la extensión de archivo. Si no hay ninguna extensión de archivo, Athena trata los datos como texto sin formato y sin comprimir. Si los datos están comprimidos, asegúrese de que el nombre de archivo incluye la extensión de compresión como, por ejemplo, gz.

  • No se admite el formato de archivo ZIP.

  • Para consultar registros de Amazon Data Firehose desde Athena, los formatos admitidos incluyen la compresión GZIP o archivos ORC con compresión SNAPPY.

  • Para obtener más información sobre el uso de la compresión, consulte la sección 3, (“Comprimir y dividir archivos”), de la publicación del Blog de macrodatos de AWS Los 10 consejos más importantes sobre el ajuste de rendimiento de Amazon Athena.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.