hadoop自身就有测试方法:
- 测试写入数据:
测试代码:
hadoop jar /opt//soft/hadoop260/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.6.0-cdh5.14.2-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128M //路径请结合自己的实际情况
jar:启动自带的 jar 文件测试
write:测试写入数据性能
nrFiles:测试文件的个数
fileSize:单个测试文件的大小
系统自动生成文件,并测试写入数据
如图测试数据:
常见错误:
1.五个进程未全部启动,jps 查看进程是否齐全
start-all.sh 命令经常会出错,五个进程会有缺失,或者你可以在 sbin 目录下一个一个启动。
stop-all.sh //先全部关闭
start-all.sh //再开启所有进程,有时启动时可能启动不全,正常现象。
若多次启动进程都不全,请检查配置文件、IP地址或集群配置。
2.安全模式未关闭,阻止测试服务
hadoop为了防止数据丢失,启动了“安全模式”的设置,每次启动hadoop后一段时间内集群处于安全模式,在该模式下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。运行期通过命令也可以进入 安全模式。系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。
直接在bash输入指令脱离安全模式(推荐)
在安全模式下输入指令:
hadoop dfsadmin -safemode leave
- 测试读取数据
测试代码:
hadoop jar /opt//soft/hadoop260/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.6.0-cdh5.14.2-tests.jar TestDFSIO -read -nrFiles 10 -fileSize 128MB //路径请结合自己的实际情况
- 删除测试数据
hadoop jar /opt/soft/hadoop260/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.6.0-cdh5.14.2-tests.jar TestDFSIO -clean //路径请结合自己的实际情况
测试结束,祝大家代码无异常!!1