Solr Delta Import перезаписывает другие исходные данные

Мы пытаемся передать данные в solr двумя способами:

  1. Таблица на основе SQL-сервера
  2. Создайте информацию о времени выполнения для дополнительных столбцов и обновите их для ключа, упомянутого в 1, через solr Rest-API.

Но когда полный или разностный импорт выполняется для столбцов данных sql, он удаляет данные, хранящиеся в дополнительных столбцах, которые не являются частью объекта sql. Я уже пробовал импорт только для данного объекта. Эти дополнительные столбцы не являются частью определения объекта в data-config.xml.


person Arvind    schedule 20.08.2015    source источник


Ответы (1)


Если я правильно понял ваш вопрос:
Когда вы вставляете документ в Solr/Lucene, единственное, что он видит, это поле, которое вы установили как uniqueKey в своей схеме. Если вы попытаетесь добавить дополнительные атрибуты в существующий документ, Solr удалит существующий документ (с этим уникальным идентификатором) и сохранит только те поля/атрибуты, которые вы предоставили в этом документе, который последним был вставлен в index.

В Solr есть функция, называемая частичными обновлениями, но она в основном считывает текущие значения полей (поэтому все поля должны быть stored), а затем повторно вставляет их, как если бы вы их предоставили. Думаю, это лучший выбор.
Посмотрите здесь для получения дополнительной информации.

person Marko Bonaci    schedule 20.08.2015
comment
Спасибо, Марко, за ответ, я ищу способ обновить выбранные столбцы только в документе, указанном уникальным ключом, то есть выбрать, обновить, а не удалить, вставить. - person Arvind; 21.08.2015
comment
В настоящее время нет возможности сделать это. Только с использованием частичных обновлений, о которых я упоминал. - person Marko Bonaci; 21.08.2015
comment
Без проблем. Помните, что атрибут stored должен иметь значение true для всех полей, которые вы хотите сохранить, иначе у Solr не будет достаточно информации для внесения изменений во вновь вставленный неполный документ. - person Marko Bonaci; 21.08.2015