云计算背后的秘密(1)-MapReduce

云计算背后的秘密(1)-MapReduce

2010-11-25 09:54:14

云计算 在Google数据中心会有大规模数据需要处理,比如被网络爬虫(Web Crawler)抓取的大量网页等。由于这些数据很多都是PB级别,导致处理工作不得不尽可能的并行化,而Google为了解决这个问题,引入了MapReduce这个分布式处理框架。

【引言】之前我写过一些关于云计算误区的文章,虽然这些文章并不是非常技术,但是也非常希望它们能帮助大家理解云计算这一新浪潮。最近,我将云计算背后的一些核心技术介绍给读者,由于云计算的核心技术是我最熟悉和最擅长,而且宣传这些技术也是我写《剖析云计算》一书和建立PeopleYun.com站点的初衷,这就是“云计算背后的秘密”这个系列的由来。

在这个新系列中将介绍多种云计算所涉及到的核心技术,包括分布式处理、分布式数据库、分布式锁、分布式文件系统、多租户架构和虚拟化等,而且将会介绍这些技术相关的产品和用例,以帮助大家进一步理解这些技术。预计每周会更新一篇,总长度会在10篇左右,希望大家能喜欢,而本文则是这个系列的第一篇。


在Google数据中心会有大规模数据需要处理,比如被网络爬虫(Web Crawler)抓取的大量网页等。由于这些数据很多都是PB级别,导致处理工作不得不尽可能的并行化,而Google为了解决这个问题,引入了MapReduce这个分布式处理框架。

技术概览

MapReduce本身源自于函数式语言,主要通过”Map(映射)”和”Reduce(化简)”这两个步骤来并行处理大规模的数据集。首先,Map会先对由很多独立元素组成的逻辑列表中的每一个元素进行指定的操作,且原始列表不会被更改,会创建多个新的列表来保存Map的处理结果。也就意味着,Map操作是高度并行的。当Map工作完成之后,系统会接着对新生成的多个列表进行清理(Shuffle)和排序,之后,会这些新创建的列表进行Reduce操作,也就是对一个列表中的元素根据Key值进行适当的合并。下图为MapReduce的运行机制:
 

 

图1. MapReduce的运行机制

接下来,将根据上图来举一个MapReduce的例子来帮助大家理解:比如,通过搜索引擎的爬虫(Spider)将海量的Web页面从互联网中抓取到本地的分布式文件系统中,然后索引系统将会对存储在这个分布式文件系统中海量的Web页面进行平行的Map处理,生成多个Key为URL,Value为html页面的键值对(Key-Value Map),接着,系统会对这些刚生成的键值对进行Shuffle(清理),之后,系统会通过Reduce操作来根据相同的key值(也就是URL)合并这些键值对。

优劣点

谈到MapReduce的优点,主要有两个方面:其一,通过MapReduce这个分布式处理框架,不仅能用于处理大规模数据,而且能将很多繁琐的细节隐藏起来,比如,自动并行化、负载均衡和灾备管理等,这样将极大地简化程序员的开发工作;其二,MapReduce的伸缩性非常好,也就是说,每增加一台服务器,其就能将差不多的计算能力接入到集群中,而过去的大多数分布式处理框架,在伸缩性方面都与MapReduce相差甚远。而 MapReduce最大的不足则在于,其不适应实时应用的需求,所以在Google最新的实时性很强的Caffeine搜索引擎中,MapReduce的主导地位已经被可用于实时处理Percolator系统所代替,其具体细节,将在本系列接下来的文章中进行介绍。

相关产品

除了Google内部使用的MapReduce之外,还有,由Lucene之父Doug Cutting领衔的Yahoo团队开发,Apache管理的MapReduce的开源版本Hadoop,而且一经推出,就受到业界极大的欢迎,并且衍生出HDFS、ZooKeeper、Hbase、Hive和Pig等系列产品。

实际用例

在实际的工作环境中,MapReduce这套分布式处理框架常用于分布式grep、分布式排序、Web访问日志分析、反向索引构建、文档聚类、机器学习、数据分析、基于统计的机器翻译和生成整个搜索引擎的索引等大规模数据处理工作,并且已经在很多国内知名的互联网公司内部得到极大地应用,比如百度和淘宝。

最后,如果大家对MapReduce感兴趣的话,可以到Hadoop的官方站点上下载并试用。

【编辑推荐】

  1. 从Qualcomm公司实施云计算说起
  2. 咖啡馆里的云 打印机的新模样
  3. 了解云的多租户是云采用的关键一步
     

 

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/252476.html<

(0)
管理的头像管理
上一篇2025-04-29 11:11
下一篇 2025-04-29 11:13

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注