Reduce端的Iterable集合的理解:
来源:互联网 发布:世界行政区域数据 编辑:程序博客网 时间:2024/05/21 14:53
Iterable:
1.集合里边的每个数值在内存中是用完全二叉树存储的形式存储的(小顶堆)
2.小顶堆的顶端(根节点)存储着按排序后的最大或最小值(小顶堆的特性)
(到底是最大还是最小根据你的排序规则确定)
3.每次循环一次,小顶堆的堆顶数值都会改变,但是不变的是顶堆的数一定是最大或最小值(小顶堆的特性)
4.当第一次调用这个reduce(Text,Iterable,Context){。。。}方法时,传过来的Text(key引用)指向了(小顶堆那组的key值)
5.当循环发生时引用(key)不变但是key存储的key发生变化是因为小顶堆的特性决定的,它会调整这个结构顶堆的数一定是最大或最小值
job.setSortComparatorClass设置的key比较函数类对所有数据对排序。然后开始构造一个key对应的value迭代器。这时就要用到分组,使用jobjob.setGroupingComparatorClass设置的分组函数类。
1 0
- Reduce端的Iterable集合的理解:
- 关于 hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- 关于 hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- 关于hadoop reduce阶段遍历Iterable的注意事项
- 关于 hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- 关于 hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- 关于 hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- Hadoop reduce阶段遍历Iterable的问题及解决方案
- hadoop reduce 阶段遍历 Iterable 的 2 个“坑”
- java集合----Iterable和Iterator的区别
- 关于foreach、Iterable、Iterator的一点理解
- Java集合类是Iterable的实现类的原因
- Hadoop :Map/Reduce的理解
- Hadoop提供的reduce函数中Iterable 接口只能遍历一次的问题
- java集合中的Iterable接口的简介与运用
- iterable和for-each循环集合的注意事项
- Iterator和Iterable的 新理解--一个神奇的接口
- tomcat启动报错: java.lang.Exception: Socket bind failed: [730013] ???????????????í????×??????·??????×?
- PB [Grid风格数据窗口改变线条颜色] 的变通实现方法(也可以成为 带表头的Grid数据窗口)
- LSD 快速线检测
- seetaface 初识
- 51nod 1473 等幂映射
- Reduce端的Iterable集合的理解:
- CentOS7上面安装kvm
- Programatically install apk from assets folder in android
- Linux下的C语言编程——求三角形面积
- web常见问题
- 点多边形测试
- 我的caffe学习之路<第九天>
- NSURLConnection设置代理
- Java输入/输出流