Hadoop Core_HDFS总结(三)——思考问题

一、HDFS 为何要讲文件分成 block 块存储?

 减少底层操作系统的 IO 读取时的寻址时间方便更高效的流式读取,提高吞吐量

二、HDFS block 块的默认大小时多少?

 dfs.blocksize 为 Hadoop 定义 block 块大小的设置参数,在 hdfs-site.xml 中版本不一样,默认值不同。Hadoop2.2.x 及以后版本均为 128M

三、HDFS block 块的大小是否可以更改?

 可以修改。参数修改对以前的文件不起作用,对以后的文件起作用。也可以针对上传文件临时修改,指定-D dfs.blocksize即可。

四、一个 block 块文件是否可以存储多个文件数据?

 一个 block 块文件不会跨文件存储。一个 block 块文件最多只会存储一个文件对应的数据

五、如果一个文件的大小,小于一个 blocksize,那么它实际占用多大空间?

实际文件多大则占多大空间,但是占了一个 block 块的元数据空间大小(在namenode)

实际文件多大则占多大空间,但是占了一个 block 块的元数据空间大小(在namenode),GB、TB甚至PB等。

六、HDFS block 越大越好?还是越小越好?

越大则分块越少,则 NameNode 压力将减小,但并行的 IO 和处理能力降低

越小则分块越多,则 NameNode 处理压力越大,但因为寻址时间太久,不利于提高吞吐量

适中即可,一般采用官方的 128M 即可

猜你喜欢

转载自blog.csdn.net/weixin_40235225/article/details/85117592
今日推荐