MapReduce总结
来源:互联网 发布:洛奇英雄传网络单机版 编辑:程序博客网 时间:2024/05/19 22:58
1、MapReduce的输入过程
大多数使用HDFS上的文件作为输入,通过FileInputFormat 进行切分为输入分片InputSplit,切分数量为 文件大小/分片大小,应尽量使输入分片大小和块的大小相同,以提高Map任务的计算数据的本地性进行提升计算性能。
partition 分区,sort 排序(快速排序、归并排序)算法。
2、map输出过程 shuffle进行数据混洗--》对Map结果文件数据进行分区归并排序
3、排序进行了3次:
Map输出到环形缓冲区,进行分区后按照健进行内排序;map任务完成前进行写文件时进行归并排序把溢写文件归并为完整的Map文件;进行把多个Map文件进行归并排序。
4、类型和Java对应关系
Java Writable
string Text
int IntWritable
5、context 对象保存了作业运行的上下文信息:作业配置信息、InputSite信息、任务ID.
6、reduce 函数接受的是values是Iterate,经过聚合后的中间结果。
7、main通过文件作为输入,map通过行号和行内容作为输入。
阅读全文
0 0
- MapReduce总结
- MapReduce总结
- MapReduce总结
- MapReduce源码分析总结
- mapreduce的总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- MapReduce源码 分析总结
- MapReduce源码分析总结
- MapReduce源码分析总结
- mapreduce源码分析总结
- MapReduce源码分析总结
- MapReduce工作机制总结
- python函数的嵌套调用与嵌套定义
- pycaffe做识别时通道转换问题
- codeblocks--一些东西
- Git的撤销修改及工作区文件删除
- POJ_3460_Oulipo_KMP
- MapReduce总结
- PHP.ini方式防注或挂马(转自黑刀)
- 使用plist进行页面间传值
- BZOJ4009: [HNOI2015]接水果 kdtree
- ARM裸机程序研究
- 常用正则表达式
- 利用背景图片生成词云,设置停用词词集
- codeforces——811A——Vladik and Courtesy
- 什么是redis