Block介绍
Hadoop中的HDFS组件是专门存储数据的。
HDFS存储数据在DataNode节点,而datanode节点里是分为一个个block存数据的。
1. Block是HDFS中数据存储的基本形式,上传到HDFS上的数据最终以Block的形式落地到DataNode的磁盘上。
2. 默认情况下,Block的大小是128M。可以通过dfs.blocksize属性来设置,放在hdfs-site.xml文件中,单位是字节。
3. 如果一个文件不足一个Block的指定大小,这个文件的大小就是它所对应的Block的大小。例如一个文件是90M,那么对应的Block就是80M。属性dfs.blocksize指定的值实际上可以为一个Block的最大容量。
测试 hadoop fs -put test.txt /a.txt
创建一个300mb的文件
fallocate -l 300M newfile.txt
hadoop fs -put newfile.txt /newfile.txt
可以看到block 大于128mb时生成了三个block文件,点击newfile.txt如下图
4. HDFS会为每一个Block来分配一个唯一的编号BlockID。
5 切块的意义:能够存储超大文件, 能够进行快速备份。