1、一个文件从本地被上传到HDFS时,会进行分块,块大小默认是64M,同时会产生副本数保存在其他datanode上,默认副本数是3个,课通过配置文件修改
2、要进行分片时,先把块从分布式文件系统中取出,调用getSplits(),通过分片算法对块进行分片,片的单位大小就是块的大小,hadoop默认128M
3、block是在物理内存上进行存储的,是真实存储在hdfs上的
4、split 是在虚拟上的存储,是在逻辑上的分片,减少块的数量,便于后续读取
5、一个split只能属于一个文件,但是一个文件会被切成很多片
6、一个split可能包含多个block,但一个block不一定只属于一个split。比如:split1完全包含block1,部分包含block2,;block2一部分属于split1,一部分属于split2.
10-06