hadoop的mapreduce原理解析
来源:互联网 发布:淘宝拍摄布光 编辑:程序博客网 时间:2024/04/29 17:45
随着大数据的不断深入,人们正从信息时代向数据时代转型。可想而知,要向数据时代转型,就需要对数据进行处理,这种数据的处理是基于大量数据的基础之上的。所以hadoop这项技术就应运而生了。
hadoop的数据处理主要分为map和reduce两个阶段。下面我就来好好分析,hadoop的这两个阶段是怎么处理数据的。比如:在hdfs上有这样的两行数据,我们进行单词出现次数的统计。
hello you
hello me
map阶段
1、在map阶段开始后,先要读取hdfs上的文件,将文件上的每一行解析成一个<key,value>,每一个键值对都调用一个map()函数。(key:每行的起始位置,即:偏移量。value:每一行的值。我们可以看到这样的两个<0,hello you><10,hello me>键值对)
2、我们的map函数继承覆盖map()接受读取的<key,value>,然后进行处理,转换为新的<key1,value1>并输出。输出后的数据是:<hello,1><you,1><hello,1><me,1>.
3、下面要对输出的<key1,value1>进行分区,默认分区为一个区。
4.对不同分区中的数据进行排序(按照key1)分组。这里分组的意思是指相同key的value放到一个集合中。分组后:<hello,{1,1}><me,{1}><you,{1}>。
5、然后对分组后的数据进行规约
reduce阶段
1、多个map任务的输出,按照不同的分区,通过网络copy到不同的reduce节点上。
2、对多个map的输出进行合并、排序。覆盖reduce函数,接收的是分组后的数据,实现自己的业务逻辑处理后,产生新的<key2,value2>输出。这里产生的数据是<hello,2><me,1><you,1>
3、对reduce输出<key2,value2>写到hdfs中。
- hadoop的mapreduce原理解析
- Hadoop 之MapReduce 运行原理全解析
- Hadoop中MapReduce的原理
- Hadoop之Mapreduce------>Mapreduce原理
- Hadoop的MapReduce实现原理解释
- hadoop 的MapReduce原理和学习心得
- hadoop 的MapReduce原理和学习心得
- Hadoop的mapreduce.framework.name属性原理
- Hadoop的Mapreduce运行原理详解
- hadoop 的MapReduce原理与心得!!!
- Hadoop的Mapreduce运行原理详解
- mapreduce原理--伪分布式hadoop的配置
- Hadoop中HDFS、MapReduce的运行原理
- Hadoop学习笔记 --- MapReduce实现WorldCount原理解析
- Hadoop mapreduce原理学习
- Hadoop MapReduce原理
- Hadoop MapReduce原理
- Hadoop MapReduce工作原理
- link
- 11.25hci学习心得
- Swift互用性:与 Objective-C 的 API 交互(Swift 2.0版更新)
- 解决eclipse内存溢出
- 单一职责原则(Single Responsibility Principle)
- hadoop的mapreduce原理解析
- Swift互用性: 使用Objective-C特性编写Swift类(Swift 2.0版)
- Spring MVC 教程,快速入门,深入分析
- jQuery :10款优秀的文件管理插件
- MySQL 5.7新特性
- Using Swift with Cocoa and Objective-C(Swift 2.0版):开始--基础设置
- 使用ssh上传文件
- prim poj1789
- 使用atomikos处理ActiveMQ在Spring环境的XA事务