Было зарегистрировано около 10 миллионов записей в db, и мы рады, что сделали это, так как мы видим преимущества высокой производительности, получая записи из solr вместо db. Эти данные используются в отчетности.Обновление индекса Solr
В настоящее время мы сохраняем плоские данные в индексе. Например:
Itemid, Companyname, Username, Status
Как только изменение статуса элемента, например, от Received к Продан, мы называем Solr API для обновления записи. Все работает очень хорошо. У нас обновлен индекс в реальном времени, отчет работает хорошо.
Вопрос 1: Теперь в будущем можно сказать, что пользователь обновил название компании от компании A до компании B, или, может быть, имя пользователя от Майка до Джимми, как мы можем с этим справиться?
Мои мысли
Слушайте пользователя и обновление компании события и обновлять только те SOLR индексы, где имя = старое название
Keep идентификатор для компании и потребителя в индексе вместо имен. И после получения записей из solr, снова нажмите db, чтобы получить обновленное имя. Это будет смешанный подход, при котором основные поля происходят из индекса, и только такие поля приходят из таблицы БД
Вопрос 2: Я зову SOLR обновление для обновления индексов для Transistions состояния для каждого вызова. Теперь есть лучший способ сделать это? Я что-то теряю в плане производительности в будущем или когда частота переходов статуса возрастает?
Вопрос 3: В будущем необходимо указать еще один столбец в отчете, который еще не проиндексирован. Каков стандартный приемлемый способ для этого?
Пожалуйста, поделитесь своими советами экспертов по этому вопросу.