Përdorni një search engine të dedikuar — Elasticsearch/OpenSearch të ndërtuar mbi një inverted index — të ushqyer nga source DB juaj përmes CDC, dhe shard-oni index-in për shkallë. Baza juaj primare (Postgres/MySQL) nuk mund të bëjë kërkim teksti me renditje sipas relevancës mbi qindra miliona rreshta; një LIKE '%term%' skanon çdo rresht. Një search engine e përmbys problemin.
Source DB ─▶ CDC (Debezium) ─▶ Kafka ─▶ Indexer ─▶ Elasticsearch/OpenSearch
(Postgres) (change stream) ├─ Shard 0 (inverted index) + replicas
├─ Shard 1
Query ─▶ Coordinator ─▶ scatter to shards ─▶ gather ─┴─ Shard N ── ranked by BM25
