理论教育 HDFSJavaAPI编程实例及优化

HDFSJavaAPI编程实例及优化

时间:2023-06-14 理论教育 版权反馈
【摘要】:3.通过设置URI 的方式在运行的时候,可能会遇到如图3-20 错误:图3-20HDFS Java API 运行错误这是没有访问权限造成的,可以通过HDFS shell chmod 增加相应权限,也可以修改Hadoop 集群中的core-site.xml 文件,新增dfs.permissions 属性和false 值即可。

HDFSJavaAPI编程实例及优化

一、创建Map/Reduce 工程

HDFS Java API 编程需要通过Eclipse 创建Map/Reduce 工程,如图3-17 所示:

图3-17 创建HDFS 工程

然后指定Hadoop 在Windows 下的解压目录,如图所示3-18,3-19:

图3-18 设置Hadoop 安装目录1

图3-19 设置Hadoop 安装目录2

二、Java API 开发

Hadoop 通过Configuration 类来保存配置信息,这些信息都以XML 文件形式保存。通过new Configuration()实例化一个对象即可获取相应信息,但是如果采用Windows远程开发,还需要通过以下三种方式设置HDFS 信息:

1.通过set 函数设置

Configuration conf = new Configuration();

conf.set(“fs.defaultFS”, “hdfs://192.168.254.128:9000”);

2.通过加载配置文件

Configuration conf = new Configuration();

conf.addResource(new Path(“C:\\hadoop\\core-site.xml”));

core-site.xml 文件中的内容为2.3.2 章节配置的core-site.xml。

3.通过设置URI 的方式

(www.daowen.com)

在运行的时候,可能会遇到如图3-20 错误:

图3-20 HDFS Java API 运行错误

这是没有访问权限造成的,可以通过HDFS shell chmod 增加相应权限,也可以修改Hadoop 集群中的core-site.xml 文件,新增dfs.permissions 属性和false 值即可。

三、程序打包

程序调试完毕后,就可以将其打成jar 包运行在Hadoop 集群中,在工程上右键选择export,如图3-21,3-22 所示:

图3-21 程序打包1

图3-22 程序打包2

选择导出的文件路径,如图3-23 所示:

图3-23 jar 包输出路径

设置Jar 包的main class,如果有多个main class,需要指定唯一一个作为程序的入口,操作如图3-24 步骤1,2 所示:

图3-24 设置jar 包主类

其他操作默认即可,最后点击finish,将生成的Test1.jar 提交到Hadoop 集群,通过hadoop jar Test1.jar 即可运行。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈