Hadoop 让AmazonEMR使用S3进行输入和输出
如何让AmazonEMR(0.20.205MAPR)使用S3存储桶进行输入和输出 我尝试将以下内容添加到核心配置xml文件(通过引导操作):Hadoop 让AmazonEMR使用S3进行输入和输出,hadoop,amazon-web-services,amazon,emr,mapr,Hadoop,Amazon Web Services,Amazon,Emr,Mapr,如何让AmazonEMR(0.20.205MAPR)使用S3存储桶进行输入和输出 我尝试将以下内容添加到核心配置xml文件(通过引导操作): fs.default.name s3n:// dfs.name.default s3n:// 但我总是得到这样的东西: 原因:java.io.IOException:无法解析路径: s3n://some\u out\u bucket/out at MapRFileSystem.lookupClient(MapRFileSystem.java:219)位
fs.default.name
s3n://
dfs.name.default
s3n://
但我总是得到这样的东西:
原因:java.io.IOException:无法解析路径:
s3n://some\u out\u bucket/out at
MapRFileSystem.lookupClient(MapRFileSystem.java:219)位于
com.mapr.fs.MapRFileSystem.delete(MapRFileSystem.java:385)位于
运行(ParseCorpus.java:192)
org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)位于
cc.mrlda.ParseCorpus.main(ParseCorpus.java:675)。。。10多
这里是Hadoop新手。请帮忙 除了上述问题中描述的配置步骤之外,我还修改了代码:
FileSystem fs=FileSystem.get(URI.create(outputPath),newjobconf(SomeClass.class))
其中outputPath
指向S3上的资源,例如s3n://some\u bucket
使用URI.create
,我现在可以直接从S3访问文件
<property>
<name>fs.default.name</name>
<value>s3n://</value>
</property>
<property>
<name>dfs.name.default</name>
<value>s3n://</value>
</property>