У нас есть php-приложение, которое имеет огромную базу данных Mysql и поисковый индекс от Solr (с SolrPhpClient).
Перед обновлением нашего индекса (через Cron) мы удаляем все товары, которых нет в наличии на данный момент. И только потом мы выбираем товары из Mysql (в наличии) и добавляем эти данные в Solr.
У меня есть идея, что существующий способ обновления нашего поискового индекса слишком дорог для производительности приложения. Фактически, мы переиндексируем все эти элементы (мы используем некоторые фильтры в схеме для русского слова, основанного на нижнем регистре и т. Д.), Вместо того, чтобы оставить отсутствующие позиции в индексе с флагом (inStock = 1). 1005 *
В будущем, я полагаю, у нас будет более 100 000 позиций (возможно, больше) в индексе. Таким образом, этот способ обновления сделает наш индекс слишком медленным и нагрузку на сервер слишком высокой.
Не могли бы вы высказать свои идеи об этой проблеме с позиций обновления индекса и выбора из него данных?
Спасибо за внимание ...