Подсветка Solr для внешних полей

Я бы хотел использовать подсвечивание Solr, но наши документы только индексируются и не сохраняются. Значения полей находятся в отдельной базе данных. Есть ли способ передать текст, который будет выделен, без необходимости Solr извлекать этот текст из его собственных сохраненных полей? Или есть интерфейс, который позволил бы мне передавать запрос, имя поля, значение поля и возвращать фрагменты?

Я на Solr 5.1.

2 ответа

Lucene поддерживает выделение (возвращает смещения) также для несохраненного содержимого , используя <tcode id="137970"></tcode>.

Включение поля для docValues ​​требует только добавления docValues ​​= "true" в определение поля (или типа поля), например:
<field name="manu_exact" type="string" indexed="true" stored="false" docValues="true" />

(введено в Lucene 8.5, SOLR-14194)

Вы можете переиндексировать набор результатов (чтение из базы данных) во встроенном экземпляре solr и выполнить запрос с тем же набором ключевых слов с включенной подсветкой и получить выделенный текст обратно.
Вы можете прочитать схему и solrconfig как ресурсы из локального jar и извлечь их во временную директорию ядра solr, чтобы эта настройка работала.

Другие вопросы по тегам