Я хочу переиндексировать всю коллекцию в Apache Solr с помощью клиента Solrj

Возьмите этот сценарий:

Я импортировал данные из таблицы Oracle Relation, т.е. wlslog, которая содержит 4 строки. Теперь я индексирую эти данные из консоли Apache Solr. Теперь, когда я запрашиваю эту коллекцию из Solrj, она извлекает 4 строки, как и ожидалось. Но теперь я добавляю 2 новые строки из базы данных Oracle в таблицу wlslog. Но когда я вызываю эту коллекцию через клиент solrj. Он извлекает только 4 строки, которые я импортировал один раз.

Итак, есть ли способ в Solrj, чтобы мы могли получить все 6 строк без повторной индексации или повторного импорта данных. ?

Дайте знать, если у вас появятся вопросы.


person UMANG PAREKH    schedule 03.03.2015    source источник
comment
Обычно ваше приложение должно добавлять документ в Solr при добавлении новой строки БД; это то, что вы имели в виду?   -  person Yann    schedule 03.03.2015
comment
@Yann›› В основном здесь все так, что есть некоторые пакетные процессы, которые изменяют таблицу базы данных (например, wlslog), или есть некоторые формы, которые обновляют таблицу базы данных (например, wlslog).. и то же самое я хочу обновить в базе данных Apache Solr. .. так или иначе я могу это сделать? Я не хочу каждый раз импортировать все данные через Solrj. Я просто хочу импортировать все измененные/добавленные данные в таблицу, чтобы отразить их в Apache Solr с помощью клиента Solrj.   -  person UMANG PAREKH    schedule 03.03.2015
comment
Я не могу придумать способ сделать это, кроме как ваше приложение (пакетное или интерактивное) обновляет индекс Solr одновременно с обновлением БД.   -  person Yann    schedule 03.03.2015


Ответы (1)


Я был в подобной ситуации давно, Oracle DB должна быть проиндексирована и многие источники модификации, которые не могут быть изменены. Окончательный вариант представляет собой триггер для индексируемой таблицы, сообщающий обо всех измененных или добавленных в очередь записях. Затем очередь опрашивается специальным процессом для обновления Solr.

Если у вас есть контроль над источниками модификации, гораздо проще изменить эти процессы для обновления записей Oracle и индекса Solr в транзакции.

person Minh-Triet LÊ    schedule 03.03.2015