Hadoop的split和block的区别和联系 |
您所在的位置:网站首页 › block和split对应关系 › Hadoop的split和block的区别和联系 |
hadoop在默认的情况下,split和hdfs的block的大小是一样的,这样容易造成误解认为两者是一样的,下面说下两者的区别和联系: split是MapReduce里的概念,是切片的概念,split是逻辑切片 ;而block是hdfs中切块的大小,block是物理切块; split的大小在默认的情况下和HDFS的block切块大小一致,为了是MapReduce处理的时候减少由于split和block之间大小不一致,可能会完成多余的网络之间的传输。 可以通过配置文件进行设置: –minsize 默认大小为1mapreduce.input.fileinputformat.split.minsize –maxsize 默认大小为Long.MAXValue mapreduce.input.fileinputformat.split.maxsize 在mapreduce的FileInputFormat类中有个getSplits() 方法对文件进行split,算法如下: Math.max(minSize,Math.min(maxSize, blockSize));其中maxSize是取得longValueMax的值 1.如果blockSize小于maxSize && blockSize 大于 minSize之间,那么split就是blockSize; 2.如果blockSize小于maxSize && blockSize 小于 minSize之间,那么split就是minSize; 3.如果blockSize大于maxSize && blockSize 大于 minSize之间,那么split就是maxSize; |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |