BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

MapReduce模式、算法和用例

| 作者 Boris Lublinsky 关注 0 他的粉丝 ,译者 姚九强 关注 0 他的粉丝 发布于 2012年2月16日. 估计阅读时间: 2 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

 

随着Hadoop和大数据应用的爆发式增长,很多人正在寻找将他们已有的实现转为MapReduce方式的方法。不幸的是,除了《应用MapReduce进行数据密集的文本处理》《Mahout in Action》几本有名书籍之外,很少有关设计MapReduce实现的出版物。在新文章“MapReduce模式、算法和用例”中,Ilya Katsov提供了一个系统化的综述,阐述了能够应用MapReduce框架解决的问题。

文章开始描述了一个非常简单的、作为通用的并行计算框架的MapReduce应用,这个框架适用于很多要求大量节点进行的计算和数据密集型计算,包括物理和工程仿真,数值分析,性能测试等等。接下来是一组算法,通常用于日志分析、ETL和数据查询,包括计数及求和,数据整理(基于特定函数),过滤,解析,验证和排序。

第二大部分是关于MapReduce模式,Katsov讨论了包括多关系形MapReduce模式,通常用于数据仓库应用程序。这些模式在Hive和Pig实现中广泛使用,并包括基于推断/函数的数据选择,数据预测、数据联合、差分、交集和分组等聚集计算。另一个讨论是关于实现数据关联和包含等算法,例如repartition join和重复联合。

更进一步,这篇文章讨论了更为复杂的MapReduce处理算法,包括图处理、搜索算法(广度优先搜索)、page rank数据集合算法,这些算法应用于图分析、web索引和通用搜索应用。文章也涵盖了常见的、需要互相关计算的文本分析和市场分析的用例。这部分包含了”pairs“和”stripes”设计模式和它们的相对优劣。

最后,Katsov给出了一个在机器学习领域实现更复杂MapReduce的很好的参考书目。

文中描述的大多数算法都有伪代码描述及它们的适用性,优势、劣势和一些真实的用例。

如今很多人仍面临应用Hadoop和MapReduce解决业务问题的困扰。有些人仍然认为MapReduce是“搜索业务问题领域的技术手段”。这篇文章是填补MapReduce算法、用例和设计模式空缺的重要一步。它展示了MapReduce强大的力量,而不仅仅是用那个声名狼藉的“词语计数”例子,并显示了MapReduce可以解决众多实际问题的方式。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

求Katsov的全文 by Lee Morris

。。。out of the wall, 求Katsov的全文

Re: 求Katsov的全文 by strengthen coding

文章居然被和谐掉了 by Huang Joe

无奈啊

Re: 文章居然被和谐掉了 by Gui Minwen

翻墙吧:b.hi-wp.com/

Re: 文章居然被和谐掉了 by strengthen coding

引用一下..“翻墙都已成为21世纪上网的必要手段..........”

Re: 文章居然被和谐掉了 by 周 祥军

b.hi-wp.com 神器啊

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

6 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT