MRS HADOOP/SPARK 代码访问OBS方式介绍

网友投稿 1045 2022-05-30

MRS HADOOP/SPARK 代码访问OBS方式介绍

1      背景描述:

MRS样例代码没有介绍如何访问OBS,在默认情况下使用的文件系统都是HDFS;如果访问OBS需要添加一些配置,代码使用过程中也有一些需要注意的地方

2      配置OBS相关参数:

需要在客户端配置文件core-site.xml里面添加以下参数:

    fs.obs.access.key     ak     fs.obs.secret.key     sk     fs.obs.endpoint     obs-endpoint

需要注意的是,此方式设置的aksk会明文暴露下文件中,谨慎使用

如果不想要明文显示可以设置ECS代理,参考指导文档:https://support.huaweicloud.com/usermanual-mrs/mrs_01_0643.html

3      代码指导:

hadoop的文件系统对象是一个抽象类:org.apache.hadoop.fs.FileSystem

常用的获取FileSystem的方式是:

FileSystem fileSystem = FileSystem.get(conf);

此方法获取到的文件系统为配置项“fs.defaultFS”指定的文件系统类型

如果我们需要的是访问OBS的文件系统则需要使用另一个方法来获取FileSystem:

FileSystem fileSystem = FileSystem.get(URI.create("obs://Bucket-Name/tmp"),conf);

此时获取到的文件系统就是对应OBS的文件系统

MRS HADOOP/SPARK 代码访问OBS方式介绍

obs://Bucket-Name/tmp

如果地址是s3a开头,这文件系统是S3aFileSystem

如果地址是obs开头,这文件系统是OBSFileSystem

此处一般都是传递过来一个文件地址参数,然后通过这个方法来自动识别文件系统

以上是对于hdfs API操作OBS文件的连接方式

如果是MapReduce任务需要读取/写入OBS的文件,可以直接将”obs://Bucket-Name/tmp”这样的地址传入,代码可以自动识别到文件系统并获取相应的文件,代码参考样例代码:

FileInputFormat.addInputPath(job, new Path(otherArgs[0])); FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));

如果是spark任务需要读取/写入OBS的文件,使用以下方法可以自动识别到相应的文件系统:

textFile(args[0])–读取文件

saveAsTextFile(args[1])–保存文件

saveAsHadoopFile(args[2])—指定格式保存文件

4      案例说明

例如我们使用MapReduce的wordcount任务:

访问hdfs上的文件进行计算启动命令:

yarn jar hadoop-mapreduce-examples-*.jar wordcount /tmp/input /tmp/output

如果需要访问OBS,则可以改成:

yarn jar hadoop-mapreduce-examples-*.jar wordcount obs://Bucket-Name/tmp/input obs://Bucket-Name/tmp/output

spark任务也是类似的操作,以spark自带样例为例:

spark-submit --master yarn --deploy-mode client --class org.apache.spark.examples.JavaWordCount spark-examples_*.jar /tmp/input

如果需要访问OBS,则可以改成:

spark-submit --master yarn --deploy-mode client --class org.apache.spark.examples.JavaWordCount spark-examples_*.jar obs://Bucket-Name/tmp/input

Hadoop mrs EI企业智能

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Redis学习完结篇:经典面试题+重点知识
下一篇:小白指导--云速邮箱--视频配置指导
相关文章