Utilización de tablas Iceberg - Amazon Athena

Utilización de tablas Iceberg

Athena admite consultas de lectura, viaje en el tiempo, escritura y DDL para tablas de Apache Iceberg que utilizan el formato Apache Parquet para los datos y el catálogo de AWS Glue para su almacén de metadatos.

Apache Iceberg es un formato de tabla abierto para conjuntos de datos analíticos muy grandes. Iceberg administra grandes colecciones de archivos como tablas y admite operaciones modernas de lago de datos analíticos, como las consultas de inserción, actualización y eliminación de registros, y viajes en el tiempo. La especificación Iceberg permite la evolución de las tablas sin problemas, como la evolución de esquemas y particiones, y su diseño se ajusta al uso de Amazon S3. Iceberg también ayuda a garantizar la corrección de los datos en escenarios de escritura simultanea.

Para más información sobre Apache Iceberg, consulte https://iceberg.apache.org/.

Condiciones y limitaciones

La compatibilidad de Athena con las tablas Iceberg tiene las siguientes limitaciones:

  • Tablas de AWS Glue Catalog únicamente: solo las tablas Iceberg creadas con AWS Glue Catalog basado en las especificaciones definidas por la implementación de Glue Catalog de código abierto son compatibles con Athena.

  • Soporte de bloqueo de tablas de AWS Glue únicamente: a diferencia de la implementación del catálogo Glue de código abierto, que admite el bloqueo personalizado de complementos, Athena admite el bloqueo optimista de AWS Glue únicamente. El uso de Athena para modificar una tabla Iceberg con cualquier otra implementación de bloqueo provocará posibles pérdidas de datos y la interrupción de transacciones.

  • Formatos de archivo compatibles: la compatibilidad con el formato de archivo Iceberg en Athena depende de la versión del motor Athena, como se muestra en la siguiente tabla.

    Versión del motor Athena Parquet ORC Avro
    2 No No
    3
  • Tablas Iceberg v2: Athena solo crea y opera con tablas Iceberg v2. Para ver la diferencia entre las tablas v1 y v2, consulte Format version changes (Cambios de versión de formato) en la documentación de Apache Iceberg.

  • Visualización de tipos de hora sin zona horaria: la hora y la marca de tiempo sin tipos de zona horaria se muestran en UTC. Si la zona horaria no se especifica en una expresión de filtro en una columna de hora, se usa UTC.

  • Precisión de los datos relacionados con la marca de tiempo: mientras que Iceberg admite una precisión de microsegundos para el tipo de datos de marca de tiempo, Athena admite únicamente una precisión de milisegundos para las marcas de tiempo tanto en las lecturas como en las escrituras. Athena solo retiene la precisión en milisegundos en las columnas relacionadas con la hora de los datos que se reescriben durante las operaciones de compactación manual.

  • Operaciones no admitidas: las siguientes operaciones de Athena no se admiten para las tablas Iceberg.

  • Vistas: se utiliza CREATE VIEW para crear vistas de Athena como se describe en Uso de vistas. Si está interesado en utilizar la especificación de vistas de Iceberg para crear vistas, póngase en contacto con athena-feedback@amazon.com.

Si desea que Athena admita una característica en particular, envíe sus comentarios a athena-feedback@amazon.com.