Dual-mode sync, not one or the other
Bulk mode handles full re-indexing and schema migrations. Real-time mode handles individual record changes within seconds. Both are necessary — one without the other always leaves gaps.
Real-time & bulk search indexing
Keeping search indices in sync with a live database — in bulk and in real-time.
Stack
Built at Apra Labs
Problem
Solution
Outcome
Real-time
incremental sync
Bulk
full re-indexing
Dual
sync modes
Zero
downtime deploys
System design · Pipeline · Decisions
How It Works
Real-time Sync
Service Bus captures database change events. Each event triggers incremental index updates within seconds of the source change.
Bulk Sync
Durable Functions orchestrate full re-indexing with checkpoint and retry logic. Field mapping transformations handle schema differences between source and search index.
Operations
Sync lag and failure monitoring ensures no changes are silently dropped. Index versioning handles schema evolution without downtime.
Key Decisions
Bulk mode handles full re-indexing and schema migrations. Real-time mode handles individual record changes within seconds. Both are necessary — one without the other always leaves gaps.
Schema updates create a new index version, populate it in the background, then swap aliases atomically. Users never hit a partially-updated or stale index.
What I'd Change
Get in Touch