hdfs块大小调整

1、hdfs数据块

HDFS上的文件被划分为块大小的多个分块作为独立的存储单元。HDFS中小于一个块大小的文件不会占据整个块的空间(当一个1MB的文件存储在一个128MB的块中时,文件只使用1MB的磁盘空间,而不是128MB)

在hdfs里,datdanode上默认的数据块大小为64M(或128M或256M),块大小调整“不能远少于64MB,也不能远大于64M”。如果块过小,那需要读取的数据块数量就会增多,从而间接增加底层硬盘的寻道时间;块过大也会有很多问题,例如增加MapReduce计算时间、Map崩溃问题等一系列问题,

2、hdfs块大小调整

(1)上传hello.txt文件

 hadoop fs -put  /home/hadoop/file/hello.txt  /hdfsapi/test/

(2)查看上传的文件的块大小

hadoop fs -stat "%o"  /hdfsapi/test/hello.txt

显示结果:67108864

(3)修改hdfs-site.xml配置文件,增加全局参数dfs.block.size

 

                 dfs.block.size

                 512000

        

注意:blockSize必须是io.bytes.per.checksum的整数倍,否则会报错

 

(4)再次上传上传hello.txt文件

 hadoop fs -put  /home/hadoop/file/hello.txt  /hdfsapi/test/hello1.txt

(5)查看hello.txt文件的块大小

hadoop fs -stat "%o"  /hdfsapi/test/hello1.txt

显示结果:512000

你可能感兴趣的:(HDFS)