Lucene: Получить оценку определенного кортежа? - PullRequest
0 голосов
/ 27 марта 2012

Обычно при использовании Lucene вы устанавливаете поисковый запрос, и Lucene дает вам некоторые результаты, по которым вы можете получить оценку для каждого документа.

В моем случае я хочу изменить эту процедуру: у меня есть кортеж моегобазу данных и хотите передать ее Lucene, чтобы получить оценку для этого определенного кортежа в индексе Lucene.Это возможно?А кто-нибудь знает как?;)

Редактировать: Конечно, я хочу получить оценку моего кортежа по отношению к определенному поисковому запросу ...

1 Ответ

2 голосов
/ 29 марта 2012

Полагаю, ваш кортеж сопоставляется с документом в индексе Lucene. Сам по себе документ не имеет оценки, связанной с ним; он оценивается только относительно конкретного запроса. Как именно вы хотите закодировать счет вашего кортежа? Как повышение документа, или, может быть, суперпозиция усиления поля (я предполагаю, что вы отображаете членов кортежа на поля документа) + повышение документа?

Итак, у вас есть кортеж и запрос Q (возможно, сложный), и вам нужна оценка документа по индексу, который соответствует этому кортежу. Сначала получите идентификатор документа этого документа, используя простой запрос (BooleanQuery of TermQueries); затем вызовите IndexSearcher.explain (Query, int) - это даст вам оценку без фактического выполнения Q.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...