BookinglyTech News
Infraestructura

Google Sheets se convierte en consola de mutaciones ACID para Apache Iceberg

Con IcebergApp y Apps Script, los usuarios pueden editar, añadir y borrar filas directamente desde Google Sheets y que los cambios se apliquen de forma atómica en una tabla Iceberg alojada en GCS.

2 min de lecturaDev.to0 vistas

Operación bidireccional sin servidores

Google Sheets ahora permite a los operadores de negocio consultar registros filtrados de una tabla Iceberg en GCS, editarlos, añadir nuevas filas o eliminar las obsoletas, y que esos cambios se envíen como una única instrucción MERGE INTO a BigQuery, que actualiza los archivos Parquet en segundos.

El flujo consta de tres etapas:

  1. Consulta – BigQuery ejecuta SQL con pushdown de predicado sobre Iceberg, devolviendo subconjuntos en menos de un segundo.
  2. Edición – el usuario trabaja en la hoja con una barra lateral dark‑theme que muestra el estado de ejecución y ofrece validaciones de celda.
  3. Writeback – Apps Script detecta los diffs, construye un MERGE con Optimistic Concurrency Control y microsegundos de tolerancia, y lo envía a BigQuery.

Todo el proceso es 100 % serverless: no se requiere un servidor persistente ni SaaS de Reverse ETL. Los costes de suscripción son $0/mes y no hay riesgo de fuga de datos.

Detalles técnicos

  • IcebergApp (repositorio en GitHub) soporta archivos Parquet, metadata Avro y snapshots. Se expande a través de una capa de Apps Script que mantiene un CDC in‑memory.
  • El writeback garantiza atomicidad mediante una única sentencia MERGE, con casting explícito y control de concurrencia.
  • Se incluye un modo de privacidad que oculta identificadores sensibles durante capturas de pantalla.
  • La consola web tiene un guardián de 100 000 celdas y una guía interactiva.
  • Los test automatizados usan un entorno headless para asegurar limpieza después de cada ejecución.

Relevancia para infraestructuras

Para administradores y arquitectos que trabajan con lakehouses en Google Cloud, esta solución elimina la brecha entre la edición en hojas de cálculo y el almacenamiento ACID de Iceberg. No se necesita configurar clusters de BigQuery ni gestionar nodos de Spark; las mutaciones se realizan a nivel de tabla con la misma velocidad que las consultas.

Próximos pasos

Los equipos de datos pueden evaluar la adopción de IcebergApp en sus flujos de trabajo existentes. La documentación de BigQuery sobre Iceberg y la guía de Google Connected Sheets ofrecen la base para integrar esta funcionalidad sin tocar código en el backend.

Para probar la solución, revisa el repositorio oficial y la documentación de BigQuery sobre tablas Iceberg.