Blog
Notes from the data path.
Engineering writing on change data capture, search projections, and realtime delivery — from the team building VentStream.
How to sync Neo4j to OpenSearch in real time
A search document is a view of a graph. Declare it as a Cypher projection and one shared-node change rewrites every document that embeds it.
How to sync PostgreSQL to OpenSearch in real time — without dual-writes
Search results showing deleted rows are a sync bug. How logical replication and a single binary keep an OpenSearch index matching the table, deletes included.
How to sync PostgreSQL to Meilisearch in real time — without dual-writes
Dual-writes drift, duplicate, and forget deletes. Postgres logical replication plus one Rust binary keeps a Meilisearch index exactly in step with the database.