Repolode
apache

apache/iceberg

Un formato de tablas abiertas de alto rendimiento para grandes conjuntos de datos analíticos, que permite a motores como Spark, Trino, Flink y Hive compartir tablas de forma segura.

Estrellas
9,412
Forks
3,665
Issues abiertos
909
Último commit
ayer

¿Qué es?

Apache Iceberg es un formato de tablas para grandes conjuntos de datos analíticos. Aporta a los data lakes la fiabilidad y la simplicidad de las tablas SQL, para que varios motores de procesamiento puedan trabajar con las mismas tablas al mismo tiempo sin dañarlas.

Este repositorio contiene la biblioteca Java principal, que sirve como implementación de referencia de la especificación de Iceberg. Está dividida en módulos: una API pública, una implementación principal con soporte para Avro, módulos opcionales para Parquet, ORC y Arrow, un catálogo respaldado por Hive metastore y un módulo de datos para leer y escribir tablas directamente desde aplicaciones JVM. También incluye integraciones con los motores Spark, Flink y Hive.

Las implementaciones en otros lenguajes se mantienen en repositorios separados; entre ellas se incluyen Go, Python (PyIceberg), Rust y C++. El proyecto se compila con Gradle y Java 17 o 21.

Funciones clave

  • 01Ofrece a las tablas de los data lakes una fiabilidad similar a la de las tablas SQL.
  • 02Permite que varios motores, como Spark, Flink y Hive, trabajen en las mismas tablas de forma concurrente.
  • 03Admite archivos de datos Avro, Parquet y ORC mediante módulos opcionales.
  • 04Incluye una implementación de tablas respaldada por Hive metastore.
  • 05Ofrece una API Java para leer y escribir tablas desde aplicaciones JVM.

Casos de uso

  • Crear un data lake en el que Spark y Trino consulten las mismas tablas analíticas.
  • Transmitir datos a tablas analíticas con Flink mientras los trabajos por lotes las leen.
  • Añadir fiabilidad a nivel de tabla a conjuntos de datos Parquet u ORC en una arquitectura basada en Hive.

Inicio rápido

  1. 1

    Clona el repositorio

  2. 2

    Compila el proyecto y ejecuta las pruebas con Gradle (requiere Java 17 o 21)

    ./gradlew build

Antes de usarlo

  • Para compilar y ejecutar las pruebas se necesitan Java 17 o 21 y Docker para la suite de pruebas.
  • Este repositorio contiene la biblioteca Java; no es una base de datos independiente ni una aplicación para usuarios finales.

Temas

Preguntas frecuentes

¿Qué es iceberg?
Un formato de tablas abiertas de alto rendimiento para grandes conjuntos de datos analíticos, que permite a motores como Spark, Trino, Flink y Hive compartir tablas de forma segura. Apache Iceberg es un formato de tablas para grandes conjuntos de datos analíticos. Aporta a los data lakes la fiabilidad y la simplicidad de las tablas SQL, para que varios motores de procesamiento puedan trabajar con las mismas tablas al mismo tiempo sin dañarlas.
¿iceberg es gratuito? ¿Qué licencia tiene?
iceberg es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿iceberg sigue mantenido?
Mantenimiento activo. El último commit de iceberg fue el 6 nov 2026.
¿Para qué puedo usar iceberg?
Crear un data lake en el que Spark y Trino consulten las mismas tablas analíticas. Transmitir datos a tablas analíticas con Flink mientras los trabajos por lotes las leen. Añadir fiabilidad a nivel de tabla a conjuntos de datos Parquet u ORC en una arquitectura basada en Hive.
¿Cómo se instala iceberg?
Clona el repositorio Compila el proyecto y ejecuta las pruebas con Gradle (requiere Java 17 o 21): ./gradlew build
¿Dónde consigo iceberg?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/apache/iceberg

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados