Я новичок в Apache Nutch, и я хочу динамически вводить url из базы данных mysql. Предлагает ли Apache Nutch такую возможность? Если нет, есть ли подобный эксперимент, из которого я могу научиться? Или любые предложения?Ввести ссылки в Apache Nutch из mysql вместо seed.txt
ответ
Nutch 1.x => Не из коробки. Вам нужно будет изменить код инжектора, чтобы он читал из MySQL, но это, безусловно, выполнимо. Я сделал это для клиента давным-давно.
В качестве альтернативы вы можете использовать StormCrawler, он имеет модуль MySQL и не должно быть никакой дополнительной работы, чтобы заставить его работать. В нашем блоге Cloudsearch tutorial показано, как использовать MySQL с SC.
Nutch 2.x использует GORA в качестве промежуточного уровня, а IIRC для него был плагин SQL. Не уверен в своем статусе и будет ли это подходящим.
Поскольку Жюльен сказал, что вы должны изменить код INJECTOR, чтобы достичь этого. Однако я могу предложить обходной путь для этого. Вы можете использовать NUTCH в режиме сервера, используя команду bin/nutch startserver, а затем загрузите свои исходные URL из базы данных. Затем вы можете использовать API Nutch REST для создания списка семян с использованием URL-адресов, загруженных из базы данных, и указать, что созданный файл семплов был вызван вызовом службы создания службы INJECT.
Вы можете найти более подробную информацию о REST API здесь: -
http://nutch.apache.org/miredot/1.12/index.html#1153761698 или https://docs.google.com/document/d/1OGg22ATohapP2ycewIaTcUnENc2FeyYzni0ED_Jjxz8/edit https://wiki.apache.org/nutch/NutchRESTAPI
Привет Julien, спасибо за Ваш ответ. Меня интересует только Nutch. Да, есть плагин mysql в репозиториях Gora для apache nutch 2.3.1, но я предполагаю, что он предназначен только для хранения данных, а не для ввода URL-адресов. Я не уверен, что произойдет, когда я раскомментирую как mysql, так и mongodb (в случае, если я хочу сохранить результаты только в mongodb). – Sparkan
раскол обоих, вероятно, приведет к прекрасному беспорядку, я думаю ;-). Я бы придерживался Nutch 1.x, если бы я был вам (лучшая производительность, меньше конфигурации и т. Д.) И писать пользовательский инжектор. Вам все равно придется делать то же самое с Nutch2.x, если вы не используете ту же сериализацию с GORA для обработки ваших семян, что, вероятно, не то, что вы хотите. –