iceguard
Consola web open-source para gestionar, inspeccionar y mantener tablas Apache Iceberg en múltiples catálogos (REST, Nessie, Polaris, Unity) mediante una interfaz moderna con React y backend Java Quarkus.
Ficha actualizada 26 sept 2026, 12:20 · upstream 26 sept 2026, 11:57 · release v0.3.0
Qué es iceguard
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
IceGuard es una consola de administración y mantenimiento para el data lakehouse Apache Iceberg. Funciona como una capa superior que se conecta a tus catálogos existentes (REST, Nessie, Polaris o Unity), proporcionando una única interfaz unificada para navegar por nombres y tablas, evolucionar esquemas y particiones, editar propiedades y visualizar la línea de tiempo de snapshots.
La arquitectura consta de dos componentes principales: un frontend desarrollado con React, TypeScript y Vite, y un backend basado en Java 21 con el framework Quarkus. El backend requiere una base de datos PostgreSQL externa para almacenar su estado interno (catálogos registrados, pipelines, alertas e historial de ejecuciones), pero no gestiona los datos del Iceberg directamente, delegando esa responsabilidad a los catálogos y almacenes de objetos configurados por el usuario.
Soporta autenticación flexible (None, Bearer, OAuth2) y permite ejecutar acciones de mantenimiento como expiración de snapshots, compactación de archivos o reescritura de manifiestos mediante ejecutores Java o Spark. Incluye capacidades avanzadas como alertas por umbral con notificaciones SMTP, gestión de pipelines programables y visualización detallada del almacenamiento y la historia de versiones del esquema.
- Gestión centralizada de múltiples catálogos Iceberg (REST, Nessie, Polaris) desde una sola interfaz.
- Evolución de esquemas y particiones con edición en tiempo real y aplicación en un solo commit.
- Ejecución y programación de tareas de mantenimiento como compactación o expiración de snapshots.
- Visualización detallada del almacenamiento, histogramas de archivos y línea de tiempo de snapshots.
- Configuración de alertas basadas en métricas de tablas con notificaciones por correo electrónico.
- Inspección de linaje de datos y diferencias entre versiones de esquema o snapshots.
- Soporte nativo para múltiples motores de catálogo (REST, Nessie, Polaris, Unity) con detección automática.
- Backend robusto en Java 21 con Quarkus para alta eficiencia y baja latencia en operaciones REST.
- Interfaz moderna y reactiva construida con React, TypeScript y Tailwind CSS.
- Capacidad de ejecutar mantenimiento mediante ejecutores Java o Spark (local o remoto).
- Despliegue simplificado mediante Docker Compose o Helm Charts para Kubernetes.
- Licencia Apache 2.0 que permite uso libre y modificación del código fuente.
- No es un catálogo Iceberg, sino una consola que depende de catálogos externos existentes.
- Requiere una instancia de PostgreSQL externa para persistir el estado de la aplicación.
- El entorno de prueba (sandbox) con MinIO y Spark es solo local y no se incluye en producción.
- La escritura en Unity Catalog puede requerir permisos adicionales como EXTERNAL USE SCHEMA.
- Nessie requiere configuración específica de región S3 y manejo de logs de commits para reconstruir historia.
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Desplegar usando Docker Compose (nivel 1 o 2) con PostgreSQL externo, o mediante Helm Charts en Kubernetes. Para desarrollo local, se pueden usar imágenes oficiales de GHCR o construir desde el repositorio. Asegurar que el backend tenga acceso a la base de datos PostgreSQL y a los catálogos Iceberg configurados vía URI y credenciales S3 si es necesario.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.



