- Ofrece la forma más sencilla de mover y transformar datos entre bases de datos PostgreSQL
- Streaming en tiempo real: transmite cambios de datos casi en tiempo real usando la replicación lógica de PostgreSQL
- Copia masiva: realiza rápidamente la sincronización inicial de datos con copia masiva en paralelo
- Transformaciones potentes: aplica transformaciones basadas en expresiones regulares, enmascara datos sensibles y filtra según los valores de las columnas
- Enrutamiento flexible: enruta datos entre tablas sin fricciones, incluso hacia tablas con nombres distintos o hacia la misma tabla mediante mapeo personalizado de columnas
- Ejemplos de reglas de transformación
- Enmascarado de direcciones de correo electrónico: convierte la columna de correo electrónico con caracteres de enmascaramiento.
- Formato de números telefónicos: transforma el formato de números telefónicos usando expresiones regulares.
- Enrutamiento de tablas y mapeo de columnas
- Enrutamiento flexible de tablas: enruta la tabla de usuarios a la tabla de clientes, mapeando ID y nombre de usuario a ID de cliente y nombre de cliente.
- Enrutamiento a múltiples tablas: enruta la tabla de pedidos a la tabla de transacciones, mapeando ID y monto total a ID de transacción y monto.
- Casos de uso comunes
- Replicación de datos en tiempo real entre bases de datos PostgreSQL
- Construcción de pipelines ETL con transformación de datos
- Redireccionamiento, enmascarado y filtrado de datos
- Ejecución de migraciones de bases de datos sin tiempo de inactividad
- Streaming de eventos desde PostgreSQL
- Cómo funciona
- pg_flo aprovecha el sistema de replicación lógica de PostgreSQL para capturar y transmitir cambios de datos.
- Usa NATS como broker de mensajes para desacoplar la lectura desde el WAL de los procesos replicadores y workers, lo que aporta flexibilidad y escalabilidad.
- Las transformaciones y el filtrado se aplican antes de que los datos lleguen al destino.
1 comentarios
Comentarios de Hacker News
El proyecto pg_flo parece muy interesante, especialmente el archivado hacia S3 y la versión económica de la herramienta
Se está trabajando en un proyecto que usa replicación lógica de PostgreSQL para depurar datos de la base de datos principal y archivarlos en S3
Se está investigando una solución de CDC para Postgres, y se pregunta si pg_flo podría ayudar
Ojalá pueda convertirse en una alternativa a Debezium
pglogical puede ejecutarse dentro de Postgres, pero pg_flo parece ser un servicio externo y no una extensión
Tengo muchas ganas de probar esta herramienta
Me pregunto en qué se diferencia frente a Sequin
Estaba buscando una herramienta similar, así que llega en el momento perfecto
Me pregunto si usar replicación sería mejor que hacer respaldos en S3
Es una herramienta muy genial