设为首页 加入收藏

TOP

Hadoop的split和block的区别和联系
2019-01-27 00:41:27 】 浏览:272
Tags:Hadoop split block 区别 联系

hadoop在默认的情况下,split和hdfs的block的大小是一样的,这样容易造成误解认为两者是一样的,下面说下两者的区别和联系:

1. split是MapReduce里的概念,是切片的概念,split是逻辑切片;而block是hdfs中切块的大小,block是物理切块;

2. 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;


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇高可用Hadoop平台-实战(电商网.. 下一篇Hadoop入门之azkaban的安装和使用

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目