Скажем, искать результаты, поле которых «A» или «B»?
кажется, по умолчанию используется И.
Скажем, искать результаты, поле которых «A» или «B»?
кажется, по умолчанию используется И.
Никогда не работал с Nutch активно, но, поскольку он основан на Lucene, не должны ли применяться правила Lucene? То есть должен применяться синтаксис синтаксического анализатора запросов. . Посмотрите, поможет ли это.
Недавно я начал работать с nutch. Вам нужно изменить query.java в nutch, чтобы выполнить запрос ИЛИ. Добавьте код в Query.java
public void addShouldTerm (строковый термин, строковое поле) { оговорки.add (новый пункт (новый термин (термин), поле, ложь, ложь, this.conf)); }
public void addShouldTerm (строковый термин) { addShouldTerm (термин, Clause.DEFAULT_FIELD); }
и сформируйте свой запрос как
Запрос запроса = новый запрос (конф); query.addNotRequiredTerm("A"); query.addNotRequiredTerm("B"); вы получите результаты для A или B.
Пожалуйста, поправьте меня, если есть другой способ сделать или лучше.
Никогда не использовал nutch для запросов (только для индексации), но schmea.xml должен содержать defaultOperator, который может быть установлен на AND или OR.