Google可拓展性会议报告

在一篇blog文章中,微软的Dare Obasanjo为大家分享了Google在Seattle召开的有关可拓展性(Scalability)的会议笔记,笔记的内容由Google员工Jeff Dean的发言整理而来,内容包括“MapReduce,BigTable,以及其他处理大规模数据集的分布式系统抽象方式”。根据Dare的笔记,讨论内容涉及Google目前三种主要的大规模可拓展架构:GFS(Google File System),提供大规模数据集并行处理能力的软件基础设施MapReduce,以及为结构数据提供分布式存储的BigTable。

报告包含Google软件基础设施许多引人入胜的特性。关于GFS:

目前Google拥有超过200个的GFS集群,其中有些集群的计算机数量超过5000台。Google现在拥有数以万计的连接池从GFS集群中获取数据,集群的数据存储规模可以达到5个PB,并且集群中的数据读写吞吐量可达到每秒40G。

MapReduce方面:

开发者只需要为数据集编写特定的Map/Reduce操作,有时甚至只需25-50行代码就够了,而MapReduce软件微架构会处理并行任务并且向分布在各处的计算机分发任务,同时处理机器错误和数据中的错误条件并进行优化操作,例如把计算 过程推移到靠近数据的一方执行来减少I/O带来的带宽消耗,还提供了系统监控并且通过数以千计的计算机保持服务的可拓展性。

关于BigTable:

BigTable不是一个关系型的数据库。它不支持关联或是类似于SQL的高级查询。取而代之的是多级映射的数据结构。这是一种面向大规模处理、容错性强 的自我管理系统,拥有TB级的内存和PB级的存储能力,每秒可以处理数百万的读写操作。目前,BigTable正在为Google六十多种产品和项目提供 存储和结构化数据获取的支撑平台。

对于那些想自己尝试Map/Reduce操作的人来说,Apache Lucene的子项目Hadoop提供了MapReduce的实现方式,以及类似于GFS的分布式文件系统HDFS,Hadoop项目对于你来说将可能会是个不错的开始。

查看英文原文:Google Scalability Session Report

你可能感兴趣的:(Google可拓展性会议报告)