ஒரு dedicated search engine பயன்படுத்துங்கள் — inverted index மீது கட்டப்பட்ட Elasticsearch/OpenSearch — உங்கள் source DB-இலிருந்து CDC மூலம் feed செய்யப்பட்டு, scale-க்காக index-ஐ shard செய்யுங்கள். உங்கள் primary database (Postgres/MySQL) நூறு மில்லியன் கணக்கான rows மீது relevance-ranked text search செய்ய முடியாது; ஒரு LIKE '%term%' ஒவ்வொரு row-ஐயும் scan செய்கிறது. ஒரு search engine problem-ஐ invert செய்கிறது.
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
