System Design · Senior · Pytanie 35 z 75
Dlaczego indeks wyszukiwania często aktualizuje się asynchronicznie, a nie w tej samej transakcji?
- ✓Poprawna odpowiedź: Aby zapis do bazy nie zależał od wyszukiwania; ceną jest opóźnienie
- 2Silniki wyszukiwania w ogóle nie obsługują zapisu danych
- 3Transakcje są zabronione przy pracy z danymi tekstowymi
Wyjaśnienie
Zmiany przekazuje się do indeksu przez kolejkę lub CDC (change data capture). Główna operacja jest szybka i niezawodna, a wyszukiwanie nadrabia w ciągu sekund - ostateczna spójność. UI powinien być na to gotowy (np. pokazywać właśnie utworzone z lokalnego stanu).