На данный момент в 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.