前言
hdfs全称hadoop分布式文件系统,是Apach Hadoop的核心子项目。hdfs适合运行在通用硬件上,其在开源大数据技术体系中地位无可替代。
这篇文章记录了用Java读写hdfs中文件的全过程。
搭建hadoop集群
第一步就是要搭建hadoop集群,让hadoop集群能够成功运行。笔者是在windows环境搭建了hadoop 2.7.7,具体步骤参见:Windows下配置Hadoop环境(全过程)
这篇文章写得十分详细,对流程不再赘述,以下只列出几点原作者没有提到的问题:
- tmp文件夹可以不用建,原作者本意是想用tmp文件夹来保存hadoop文件系统依赖的基本配置,如果确实需要这样做,那么建好tmp文件夹后需要在core-site.xml中配置dfs.tmp.dir参数才能起作用;
- hdfs namenode -format作用是对namenode目录格式化,一般只在初次启动前执行,之后启动直接start就可以了,如果多次执行hdfs namenode -format可能会导致datanode无法正常启动的问题,这是由于namenode、datanode的clusterID不一致造成的,解决方法是将datanode\current\VERSION里的clusterID改成namenode\current\VERSION里的clusterID即可;
- 笔者启动过程中出现了9000端口号被其他程序占用的问题,这个问题有两个解决方法:查找并杀死占用9000端口号的进程,或者在core-site.xml中更改hadoop集群的端口号,笔者将端口号改成了9999;
- 使用完成后先用stop命

本文详述了如何在Windows环境下搭建Hadoop 2.7.7集群,并通过Java API进行HDFS文件的读写操作。搭建过程包括解决端口冲突、配置问题等。示例代码展示了使用Java读写HDFS文件的方法,强调了readUTF和writeUTF方法的配合使用。

1450

被折叠的 条评论
为什么被折叠?



