HDFS冷存场景性能已经达到磁盘带宽上限,因此通过压缩特性以进一步提升带宽。
目的
调整Hadoop自带的TestDFSIO工具生成测试文件的逻辑,TestDFSIO会在DataNode本地生成指定大小的规律的测试文件,这种按照特定规律生成的文件拥有很大的压缩率,会影响压缩测试的结果。需要对其进行修改,以达成下方目的。
- 生成测试文件的逻辑从按照特定规律生成改为以指定文件作为模板生成。
- 根据需求可以选择不同的模板文件灵活调整测试文件的压缩比。
调优步骤
- 打开文件Hadoop源码。
- 获取patch补丁,下载链接。
- 通过传输工具将下载的patch补丁上传到“../hadoop-3.1.0-src/”目录下。
- 合入补丁。
| patch -p1 < hdfs-testdfsio-0001.patch
|
- 编译Hadoop源码并部署(具体的Hadoop编译及部署操作请参考:编译Hadoop、部署Hadoop)。
- 在hadoop运行目录下创建testFiles文件夹用于存放测试文件。
| mkdir -p ../hadoop/testFiles
|
- 将测试文件拷贝到testFiles文件夹下,创建软链接(以target_file为例)。
| mv target_file ../hadoop/testFiles
cd ../hadoop/testFiles
ln -s target_file test_io_file
|
- 在所有服务器重复步骤5~步骤7。
- 重启hadoop集群。
| /usr/local/hadoop/sbin/stop-all.sh
/usr/local/hadoop/sbin/start-all.sh
hdfs dfsadmin -safemode leave
|