Nutch на EMR проблем с чтением от S3 - PullRequest
6 голосов
/ 30 августа 2011

Привет, я пытаюсь запустить Apache Nutch 1.2 на EMR Amazon.
Для этого я указываю входной каталог из S3.Я получаю следующую ошибку:

Fetcher: java.lang.IllegalArgumentException:
    This file system object (hdfs://ip-11-202-55-144.ec2.internal:9000)
    does not support access to the request path 
    's3n://crawlResults2/segments/20110823155002/crawl_fetch'
    You possibly called FileSystem.get(conf) when you should have called
    FileSystem.get(uri, conf) to obtain a file system supporting your path.

Я понимаю разницу между FileSystem.get(uri, conf) и FileSystem.get(conf).Если бы я писал это сам, я бы FileSystem.get(uri, conf) пытался использовать существующий код Nutch.

Я задал этот вопрос, и кто-то сказал мне, что мне нужно изменить hadoop-site.xml, чтобы включить следующие свойства: fs.default.name, fs.s3.awsAccessKeyId, fs.s3.awsSecretAccessKey.Я обновил эти свойства в core-site.xml (hadoop-site.xml не существует), но это не имело значения.У кого-нибудь есть другие идеи?Спасибо за помощь.

1 Ответ

0 голосов
/ 12 марта 2014

попробуйте указать в

hadoop-site.xml

<property>
  <name>fs.default.name</name>
  <value>org.apache.hadoop.fs.s3.S3FileSystem</value>
</property>

Это скажет Nutch, что по умолчанию должен использоваться S3

Свойства

fs.s3.awsAccessKeyId и fs.s3.awsSecretAccessKey

спецификация вам нужна только в том случае, когда ваши объекты S3 находятся под аутентификацией (в S3 объект можетбыть доступным для всех пользователей или только посредством аутентификации)

...