nutch с elasticsearch создает несколько индексов/типов

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

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


person Saran    schedule 26.10.2018    source источник


Ответы (1)


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

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

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

ИЗМЕНИТЬ

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

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

person Jorge Luis    schedule 26.10.2018
comment
В Nutch 1.15 добавлена ​​возможность маршрутизации документов, и должна быть возможность маршрутизировать документы по хостам на два индекса ES, см. wiki.apache.org/nutch/Exchanges и NUTCH-2412./NUTCH -2412 - person Sebastian Nagel; 04.11.2018
comment
Апс, совсем пропустил JexlExchange ????. я думал - person Jorge Luis; 05.11.2018