Использование S3 в качестве системы хранения орехов - PullRequest
0 голосов
/ 04 марта 2020

Я хочу использовать S3 в качестве моей файловой системы для apache NUTCH. Я знаю, что oop можно настроить для использования S3 в качестве fs, но я не могу найти способ настроить это с помощью Nutch. Может кто-то указать мне правильное направление или дать краткое изложение метода для этого. В качестве альтернативы, возможно ли иметь возможность выгружать данные в s3 с помощью команды readseg, а не иметь всю файловую систему в s3, возможно ли это?

cheers

Ответы [ 2 ]

3 голосов
/ 05 марта 2020

Nutch при работе в (псевдо) распределенном режиме доказал свою работоспособность с любой файловой системой, поддерживаемой базовой установкой Had oop, включая S3 или S3A.

Обратите внимание:

  • не работает "из коробки" при работе в локальном режиме, поскольку необходимые библиотеки по умолчанию не являются зависимостями Nutch. Вам нужно будет добавить все необходимые библиотеки в качестве управляемых зависимостей IVY и перекомпилировать Nutch.
  • В предыдущих версиях Nutch были проблемы, в которых HDFS была встроена в код. Это было исправлено для 1.14, см. NUTCH-2281 .
  • Nutch использует файловую систему "mv" для атомарной установки текущей версии CrawlDb и LinkDb. На S3 это означает копирование файлов, что, как известно, медленное. Возможно, будет эффективнее хранить CrawlDb в HDFS и время от времени передавать его на S3.
  • Сегменты имеют уникальные имена, поэтому их можно эффективно хранить на S3. Но взгляните также на документацию коммитеров S3A .
0 голосов
/ 04 марта 2020

Теоретически, если вы добавите значение ключа для fs.s3a.impl и измените базовый сайт. xml fs.defaultFS, чтобы он указывал на путь сегмента S3, он должен работать. Проблема конкретно не ограничена Nutch

https://hadoop.apache.org/docs/current/hadoop-aws/tools/hadoop-aws/index.html

...