Я просмотрел документы для Java-версии Lucene, но пока не вижу информации «вот как это работает» верхнего уровня (я знаю, что мне нужен RTFM, я просто могуне вижу дрова для деревьев).
Я понимаю, что Lucene использует поисковые индексы для возврата результатов.Насколько я знаю, он только возвращает "попадания" из этих индексов.Если я не добавил элемент данных при построении индекса, он не будет возвращен.
Это нормально, поэтому теперь я хочу проверить следующее предположение:
В: Означает ли это, что любые данные, которые я хочу отобразить на странице поиска, необходимо добавить в индекс Lucene?
Т.е.
Если я хочу найти Product
по таким вещам, как sku, описание, название категории и т. Д., Но я также хочу отобразить Customer
, которому они принадлежат, в результатах поиска, могу ли я:
- Убедитесь, что индекс Luceneденормализованное имя
Customer
в индексе. - Используйте хиты, возвращаемые Lucene, чтобы каким-либо образом запросить в базе данных фактические записи продукта, и используйте
JOIN
, чтобы получить имя Customer
.
Я предполагаю, что это вариант 1 , так как я предполагаю, что нет никакого способа "соединить" результаты запроса Lucene с RDBMS, но хотел спросить его, мои предположенияпо поводу общего использования верны.