Saltar al contenido
ES EN

Integra DuckDB en Amazon Aurora PostgreSQL con esta guía técnica

Aprende a consultar datos históricos de Amazon S3 desde Aurora PostgreSQL combinando datos operacionales con DuckDB, sin pipelines de ETL inversos.

Ingeniería de software

AWS ha adquirido DuckLabs, la empresa de Ámsterdam que está detrás de DuckDB, la base de datos analítica pensada para consultas muy rápidas sobre volúmenes moderados. Sus cofundadores, Hannes Mühleisen y Mark Raasveldt, seguirán dirigiendo el equipo y la orientación técnica del proyecto dentro de AWS. Los detalles figuran en el anuncio de DuckLabs.

Lo que más nos interesa a quienes construimos sistemas es la primera consecuencia práctica: Amazon Aurora PostgreSQL ya incorpora una función impulsada por DuckDB. Esta guía resume cómo plantear su uso, qué esperar y qué cuidar. Ten en cuenta que nos basamos en lo que AWS ha publicado, así que cualquier detalle de configuración que no aparezca allí tendrás que contrastarlo con la documentación oficial.

Esquema conceptual de una base de datos operacional conectada con almacenamiento histórico en la nube
Una sola consulta cruza datos recientes y datos históricos.

Lo que necesitas

La idea central es evitar los llamados reverse ETL, es decir, los procesos que duplican datos para mantener sincronizados lo operacional y lo histórico. Con la nueva función, una misma consulta puede combinar los datos vivos de Aurora con tablas Apache Iceberg gestionadas con AWS Glue Data Catalog, además de datos Parquet e Iceberg guardados en Amazon S3 y S3 Tables.

  • Un clúster de Amazon Aurora PostgreSQL en una región comercial de AWS o en AWS GovCloud (US), donde la función está disponible.
  • Datos históricos en formato Parquet o Iceberg, ya sea en buckets de S3, en S3 Tables o catalogados mediante AWS Glue Data Catalog.
  • Permisos de acceso a esos datos desde Aurora, que debes definir según las políticas de tu organización.
  • Una idea clara del coste: no hay cargo adicional por la función, pero se paga el cómputo incremental de Aurora y las peticiones a S3 que generen tus consultas.
  1. Confirma que tu clúster Aurora PostgreSQL está en una región compatible y revisa en el anuncio de AWS los requisitos de versión y configuración.
  2. Ordena tus datos históricos en Parquet o Iceberg y registra las tablas en el catálogo de datos de AWS Glue si vas a usar Iceberg.
  3. Concede a Aurora acceso de lectura a los buckets o tablas necesarios, aplicando el principio de mínimo privilegio.
  4. Escribe una consulta que una una tabla operacional de Aurora con la tabla histórica y valida el resultado frente a una muestra conocida.
  5. Observa el consumo de cómputo y las peticiones a S3 durante unos días antes de llevarlo a producción.

Ejecución de consultas híbridas

El procesamiento de estas consultas se queda dentro de Amazon Aurora, sin saltos de red adicionales ni conductos ETL intermedios, lo que reduce configuraciones y recursos. Para quien mantiene la plataforma, esto significa menos piezas que vigilar y menos copias de datos que pueden quedar desfasadas. Como referencia, el siguiente patrón ilustra la idea de forma genérica; la sintaxis exacta debes tomarla de la documentación de AWS.

-- Esquema ilustrativo, no es sintaxis oficial
-- SELECT ... FROM tabla_operacional
--   UNION ALL
-- SELECT ... FROM tabla_historica_en_s3;

Hay contexto que ayuda a entender el movimiento. Según Mai-Lan Tomsen Bukovec, vicepresidenta de tecnología en AWS, DuckDB nació para resolver el rendimiento de más del 90 % de las consultas del mundo, que suelen manejar un terabyte de datos o menos en análisis y paneles. Ella lo considera especialmente relevante en cargas de IA agéntica, donde los agentes lanzan pequeñas consultas exploratorias antes de decidir cómo seguir.

La relación entre ambos equipos no es nueva. En el blog de Werner Vogels, Andy Warfield cuenta que el contacto comenzó cuando el equipo de S3 trabajaba en S3 Tables y que, durante unos dos años, ambos equipos exploraron AWS Lambda para lanzar consultas DuckDB con rapidez y suavizaron la integración con motores de AWS mediante los comandos ATTACH y CONNECT. Puedes ampliar el enfoque conjunto en el blog de AWS.

Representación de un patito de goma junto a una base de datos, aludiendo al logotipo de DuckDB
DuckDB y todo su Duck Stack seguirán siendo software libre.

Qué sigue igual y qué queda por ver

DuckDB y los componentes de su «Duck Stack», como DuckLake y Quack, seguirán siendo libres bajo licencia MIT, y la fundación sin ánimo de lucro DuckDB Foundation continuará supervisando los proyectos. La comunidad ha recibido la noticia con agrado, aunque con cierto escepticismo: hay quien espera que la adquisición no frene el ritmo de innovación del proyecto.

Truco Diseña tus consultas pensando en la factura: solo pagas el cómputo incremental de Aurora y las peticiones a S3 que generen. Filtra por columnas y particiones antes de unir y mide primero con un volumen pequeño.

Un último aviso: esta función no sustituye a un almacén analítico dedicado en todos los casos. Si tus consultas históricas son muy pesadas o muy frecuentes, conviene comprobar con datos reales el impacto sobre las cargas transaccionales del mismo clúster. Todavía hay incógnitas, como el ritmo al que llegarán nuevas funciones basadas en DuckDB a otros servicios de AWS, de las que el material publicado no ofrece detalles.

Fuente original: infoq.com

Artículo generado mediante AI.larebelion

Kernel

· Dirección de tecnología · España

«Menos pipelines de sincronización suena genial, pero cada simplificación en la nube tiene su factura y su dependencia.»

Comentarios

Publicar un comentario