北京网站建设签约,网上商城 网站,深圳设计网站推荐,网站开发成本计算HDFS中的文件在物理上是分块存储#xff08;Block#xff09;#xff0c;块的大小可以通过配置参数#xff08;dfs.blocksize#xff09;来规定#xff0c;默认大小在Hadooop2X版本中是128M#xff0c;老版本中是64M。
思考#xff1a;为什么块的大小不能设置太小Block块的大小可以通过配置参数dfs.blocksize来规定默认大小在Hadooop2X版本中是128M老版本中是64M。
思考为什么块的大小不能设置太小也不能设置太大
HDFS的块设置太小会增加寻址时间程序一直在找块的位置如果块设置的太大从磁盘传输数据的时间会明显大于定位这个块开始位置所需要的时间。导 致程序在处理这块数据时会非常慢。
总结HDFS块的大小主要取决于磁盘传输速率。
hdfs中block为什么设置为128MB hdfs中的平均寻址时间为10ms而传输速率普遍为100MB/s而在大量测试中得出寻址时间为传输时间的1%时为最佳状态 通过计算最佳传输时间10ms/0.011s,进一步计算出Block块大小1s*100MB100MB,而我们磁盘block块的大小都是2^n倍所以设置hdfs中的blcok大小为128MB,但是很多情况下HDFS安装时使用更大的块。以后随着新一代磁盘驱动器传输速率的提升块的大小会被设置得更大。
但是这个参数也不会设置得过大。MapReduce中的map任务通常一次只处理一个块中的数据因此如果任务数太少(少于集群中的节点数量)作业的运行速度就会比较慢。
如果block设置过大在MapReduce中的map任务通常一次只处理一个块中的数据因此设置的过大就会使作业的运行速度较慢
hdfs中小于blcok块大小的文件如何存储当所存储的文件小于block块的大小时它并不会占用整个block块的大小只会占用它的实际存储大小