модуль 1 из 4 · Акт IV · ~30 мин · 7 решений
сцена
Понедельник, планёрка. Лера кладёт на стол распечатку с отзывами — и в ней одно и то же.
Фермер залил партию свежей клубники в десять утра. Покупатели нашли её в поиске… на следующий день. У нас поиск отстаёт на сутки. На скоропорте это прямые потери: пока товар «появится», половина уже раскуплена в офлайне.
Объясняю, откуда сутки. Индекс поиска и витрины для аналитики пересобираются ночью, одним большим заданием: оно читает всю боевую базу и строит их заново — до аналитической реплики руки так и не дошли его переключить. Днём они заморожены — что собрали ночью, то и живёт до утра. И это же задание пару раз в месяц роняет прод, когда его тяжёлые чтения попадают на утренний трафик.
Ну так давайте обновлять индекс сразу. Записали товар — тут же дописали строчку в индекс поиска. Никаких суток, никакого ночного монстра.
(медленно) Звучит логично. Подозрительно логично — а мы уже знаем, что это чаще всего значит.
Он открывает схему ночного конвейера. Пора разобраться, что тут на самом деле источник истины, а что — производное.
Индекс поиска и витрины — не оригиналы, а копии, пересобираемые ночью из базы товаров (за полтора года данных индекс дорос из «минут» четвёртого модуля в ночное задание).