Nutch с упругим поиском, создающим несколько индексов / типов - PullRequest
0 голосов
/ 26 октября 2018

Мне нужно отсканировать два веб-сайта и проиндексировать их в эластичный поиск как два разных индекса или типа. Я использую Nutch 1.15 сasticsearch-5.3.3

Как мы можем сканировать два разных сайта и индексировать их по отдельности вasticsearch inchch? Может ли это быть достигнуто за один раз?

1 Ответ

0 голосов
/ 26 октября 2018

На данный момент в Nutch нечем заняться маршрутизация документов . Например, если вы используете index-jexl-filter, фильтрация выполняется до того, как документ будет отправлен авторам Nutch. Вы можете настроить несколько составителей индекса (2), и тогда документы будут отправлены обоим составителям индекса. Эти писатели могут писать в разные индексы / типы документов, но все документы будут заканчиваться обоими индексами / типами документов.

Сказано, что если вы найдете способ выполнить фильтрацию на стороне ES, вы можете сконфигурировать эти средства записи индекса и направить документы к ним обоим. Затем отфильтруйте в ES во время приема (возможно, что-то вроде script в ES, что препятствует началу загрузки документа, если он не соответствует определенному требованию. Но я не могу не думать о чем-то конкретном, что делает это прямо сейчас.

Кроме того, вы можете просто клонировать индексатор эластичности и настроить его так, чтобы type извлекался из самого документа.

EDIT

Спасибо @ sebastian-nagel за указание на это.

Я полностью пропустил обмен https://nutch.apache.org/apidocs/apidocs-1.15/org/apache/nutch/exchange/jexl/JexlExchange.html, который делает именно то, что вы хотите. Это позволяет выполнять маршрутизацию документов во время индексации, используя выражение JEXL.

...