8 puntos por GN⁺ 2024-12-09 | Aún no hay comentarios. | Compartir por WhatsApp
  • Este repositorio, bajo la idea de “Keep It Simple Stupid, just use postgres”, reúne y muestra herramientas y casos de uso que aprovechan Postgres para distintos propósitos
  • La lista se mantiene inspirada en el artículo Postgres for Everything de Amazing CTO y en el GitHub gist de @cpursley, porque siguen apareciendo nuevas herramientas y formas de usar Postgres
  • El alcance es amplio: trabajos cron, Postgres embebido, colas de mensajes, analítica, GIS, registros de auditoría, control de acceso, búsqueda, series temporales, NoSQL, grafos, HTTP, API, CDC, caché, pruebas, migraciones, ajuste de rendimiento, monitoreo, extensiones, UI, CLI, visualización, gestión de paquetes, seguridad y hasta libros contables financieros
  • Cada elemento organiza principalmente enlaces a extensiones de Postgres, bibliotecas, plataformas de API, artículos y herramientas, y algunos se conectan con tecnologías concretas como DuckDB, pgvector, PostGIS, PgBouncer, GraphQL y CDC
  • Quienes quieran agregar ejemplos de fragmentos de código, herramientas o proyectos específicos deben abrir un PR con enlaces y usar el nuevo pull request template

Propósito del repositorio y forma de mantenimiento

  • El objetivo del repositorio Postgres for Everything es mostrar cómo usar Postgres para múltiples propósitos
  • El repositorio está inspirado en los siguientes recursos
  • Se mantiene como un lugar para seguir nuevas herramientas y nuevas formas de uso que continúan apareciendo sobre Postgres
  • Si hay otros ejemplos, se puede enviar un PR
  • Para mostrar fragmentos de código, herramientas o proyectos, se debe abrir un PR con enlaces y usar el pull request template

Lecturas y artículos de referencia

Ejecución de tareas, embebido y colas

  • Cron Jobs

  • Postgres embebible

    • PGLite: empaqueta como biblioteca de TypeScript una compilación WASM de Postgres de menos de 10 MB que puede ejecutarse en navegador, Node.js, Bun y Deno
    • pgmicro: reimplementación in-process de PostgreSQL basada en un motor de almacenamiento compatible con SQLite
  • Colas de mensajes

    • tembo-io/pgmq
    • SKIP LOCKED
    • sequinstream/sequin: herramienta de CDC que envía filas y cambios de Postgres a plataformas de streaming y colas como Kafka y SQS
    • janbjorge/pgqueuer: biblioteca de cola de trabajos en Python que aprovecha PostgreSQL
    • smartpricing/queen: cola de mensajes basada en PostgreSQL que ofrece particiones FIFO independientes, consumer groups al estilo Kafka y exactly-once delivery

Analítica, mapas, auditoría y permisos

Búsqueda, series temporales, orientado a columnas, NoSQL, grafos

  • Full Text Search

  • Vector Search

    • pgvector/pgvector
    • tensorchord/VectorChord: extensión de búsqueda de similitud vectorial para PostgreSQL orientada a escalabilidad, alto rendimiento y eficiencia en disco
    • timescale/pgai: extensión basada en pgvector que permite desarrollar RAG, búsqueda semántica y aplicaciones de IA dentro de Postgres
    • timescale/pgvectorscale: implementación de índice vectorial DiskANN que complementa pgvector
  • Hybrid Search

    • plpgsql_bm25rrf.sql: búsqueda híbrida que combina BM25 y pgvector con Reciprocal Rank Fusion
  • Time Series

  • Column Oriented

  • NoSQL

  • Graph Data

    • Apache Age: base de datos de grafos para PostgreSQL que ofrece procesamiento y análisis de datos de grafos en bases de datos relacionales

Datos externos, HTTP, API, GraphQL, CDC

Caché, pruebas, aplicaciones, migraciones

Rendimiento, monitoreo, escalado, UI

  • Performance Tuning

  • Monitoring

    • StatsMgr: admite la gestión de estadísticas de WAL, SLRU, checkpointing y más
    • pgMonitor: solución de monitoreo que visualiza métricas con Prometheus, Grafana, SQL Exporter y la extensión pgMonitor
  • Testing

    • regresql: herramienta de pruebas de regresión de consultas SQL compatible con PostgreSQL
  • Scaling & Storage

    • Snowflake-Labs/pg_lake: permite usar Postgres como un sistema lakehouse independiente y admite transacciones y consultas sobre tablas Iceberg en almacenamiento de objetos como S3
    • pgdogdev/pgdog: pooler transaccional con sharding para PostgreSQL y administrador de replicación lógica
    • pgbouncer/pgbouncer: pooler de conexiones ligero para PostgreSQL
    • orioledb.com: extensión de PostgreSQL que combina las ventajas de los motores en disco y en memoria
  • User Interfaces & Dashboards

Herramientas para desarrolladores, visualización, paquetes, seguridad, finanzas

Aún no hay comentarios.

Aún no hay comentarios.