- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
作者:开点 ( :kaidiancs)
:
https: /discuss/18355?type=1order=0pos=11page=0
来源: 网
通过一个例子让你了解 MapReduce 并行
编程模型
开点 ( :kaidiancs)
发布于 2016-11-04 08:19:56 app 内打开
赞 2 | 收藏 14 | 回复0 | 浏览 3428
通过一个例子让你了解 MapReduce 并行
编程模型
APP 内打开2140
自 公众账号:开点 (kaidiancs)
1. MapReduce 基本编程模型
MapReduce 是在集群规模上面向大数据处理的并行编程模型,MapReduce 编程不
同于以往熟悉的编程思维。
MapReduce 要求处理的数据之间没有相关性,采用对数据 “分而治之”的方法,
把大数据集划分为若干个小数据集,并行对小数据集处理,最后收集小数据集上
的处理结果,合并成结果数据。MapReduce 特别适合对大数据/文本的统计分析,
例如 Web 日志分析、科技文献 关系分析和统计、网页排序等。
【例】一个真实的数据集cite75_99.txt (专利 数据),它来自美国 经
济研究局提供的美国专利数据, 为 。部分
数据如下。
CITING ( ) CITED (被 )
4738565 1001205
4795115 1001180
4903406 1001205
4934634 1001180
5123888 1001198
5156335 1001218
5197936 1001198
5295940 1001198
5439320 1001205
5544977 1001205
¼¼
第一行给出列的描述,其他行 一次专利的 ,例如第二行表示专利
4738565 了专利 1001205 。文件中的各行按照 专利排序。
要求统计专利被 次数,部分结果示例如下,每行 表示专利号和被
次数,。
1001198 3
1001205 4
1001209 2
1001212 2
1001213 1
1001218 1
¼¼
专利被 次数的 MapReduce 的基本编程模型如图 1 所示,图中显示了部分数
据的处理过程。
MapReduce 主要有 6 个可编程组件,分别是 InputFormat、Mapper、Combiner、
Partitioner、Reducer 和 OutputFormat,Hadoop 自带了很多直接可用的
InputFormat、Partitioner 和 OutputFormat,很多时候用户只需要编写Mapper
和 Reducer 就可以快速完成并行化程序设计。
图 1. MapReduce 基本编程模型
InputFormat 是一个抽象类,完成三个任务:(1)验证作业数据的输入形式和
格式。(2)将输入数据分割为逻辑意义上的数据分片(split)。(3)从数据
分片中创建一条条 (RR),把每条 成键/值对(key,value)形式。
通常文本文件中一行数据创建一条
文档评论(0)