{"repo":"edgeflare/pigo","free":true,"listed":false,"github":"https://github.com/edgeflare/pigo","clone":"git clone https://github.com/edgeflare/pigo.git","description":"PostgREST-compatible REST API, Debezium-compatible CDC","language":"Go","stars":20,"topics":["postgresql","change-data-capture","event-stream","logical-replication","oidc","rest-api"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"pigo: Postgres integrations in Go usability status: experimental This project follows a Work → Right → Fast approach: 1. make it work 2. refine it 3. optimize it It's in the early stage, so the code may be rough/incomplete. Join us in building and improving it! PostgREST compatible REST API See godoc and pigo rest --help for more. Benchmark results compared to PostgREST Metric PIGO REST PostgREST -------- --------------- ----------- VUs 10,000 1,000 Requests/sec 38,392 828 Avg Response Time 241ms 1.16s P95 Response Time 299ms 3.49s Error Rate 0% 0% Stream Postgres changes to NATS, MQTT, Kafka, Clickhouse, etc 1. Start Postgres, NATS, Kafka, MQTT broker and pigo pipeline as containers 2. Postgres - As a source: Create a test table, eg users in source postgres database - As a sink - Create the same users table in sink database for mirroring. altering replica identity may not be needed in sink - Create a second table in sink database which stores transformed data pigo caches the table schemas for simpler parsing of CDC events (rows). To update pigo cache with newly created tables, either docker restart pigo pigo 1 or NOTIFY it to reload cache by executing on database 4. Subscribe - MQTT: /any/prefix/schemaName/tableName/operation topic (testing with mosquitto client) - Kafka: topic convention is [prefix].[schema name].[table name].[operation] . use any kafka client eg kaf - NATS: 5. INSERT (or update etc) into users table And notice NATS, MQTT, Kafka, postgres-sink, or debug pee","default_branch":null,"files":null,"tree":[],"storefront":"/r/edgeflare","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/edgeflare/pigo/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}