gpt4 book ai didi

java - Nutch 关于从 S3 读取 EMR 的问题

转载 作者:可可西里 更新时间:2023-11-01 14:17:31 24 4
gpt4 key购买 nike

您好,我正在尝试运行 Apache Nutch 1.2 在亚马逊的 EMR 上。
为此,我从 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 不存在),但这并没有什么不同。有没有人有任何其他想法?感谢您的帮助。

最佳答案

尝试在

中指定

hadoop-site.xml

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

这将向 Nutch 提及默认情况下应使用 S3

属性

fs.s3.awsAccessKeyId and fs.s3.awsSecretAccessKey

仅当您的 S3 对象处于身份验证之下时才需要的规范(在 S3 中,所有用户都可以访问对象,或者只能通过身份验证)

关于java - Nutch 关于从 S3 读取 EMR 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7237927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com