Google的云计算技术实际上是针对Google特定的网络应用程序而定制的。针对内部网络数据规模超大的特点,Google提出了一整套基于分布式并行集群方式的基础架构,利用软件的能力来处理集群中经常发生的节点失效问题。

从2003年开始,Google连续几年在计算机系统研究领域的最顶级会议与杂志上发表论文,揭示其内部的分布式数据处理方法,向外界展示其使用的云计算核心技术。从其近几年发表的论文来看,Google使用的云计算基础架构模式包括四个相互独立又紧密结合在一起的系统。包括Google建立在集群之上的文件系统Google File System,针对Google应用程序的特点提出的Map/Reduce编程模式,分布式的锁机制Chubby以及Google开发的模型简化的大规模分布式数据库BigTable。

Google File System 文件系统
为了满足Google迅速增长的数据处理需求,Google设计并实现了Google文件系统(GFS,Google File System)。GFS与过去的分布式文件系统拥有许多相同的目标,例如性能、可伸缩性、可靠性以及可用性。

MapReduce分布式编程环境
为了让内部非分布式系统方向背景的员工能够有机会将应用程序建立在大规模的集群基础之上,Google还设计并实现了一套大规模数据处理的编程规范Map/Reduce系统。这样,非分布式专业的程序编写人员也能够为大规模的集群编写应用程序而不用去顾虑集群的可靠性、可扩展性等问题。应用程序编写人员只需要将精力放在应用程序本身,而关于集群的处理问题则交由平台来处理。
Map/Reduce通过“Map(映射)”和“Reduce(化简)”这样两个简单的概念来参加运算,用户只需要提供自己的Map函数以及Reduce函数就可以在集群上进行大规模的分布式数据处理。

分布式大规模数据库管理系统BigTable

构建于上述两项基础之上的第三个云计算平台就是Google关于将数据库系统扩展到分布式平台上的BigTable系统。很多应用程序对于数据的组织还是非常有规则的。一般来说,数据库对于处理格式化的数据还是非常方便的,但是由于关系数据库很强的一致性要求,很难将其扩展到很大的规模。为了处理Google内部大量的格式化以及半格式化数据,Google构建了弱一致性要求的大规模数据库系统BigTable。据称,现在有很多Google的应用程序建立在BigTable之上,例如Search History、Maps、Orkut和RSS阅读器等。BigTable中最重要的选择是将数据存储分为两部分,主体部分是不可变的,以SSTable的格式存储在GFS中,最近的更新则存储在内存(称为memtable)中。读操作需要根据SSTable和memtable还综合决定要读取的数据的值。第二个重要的决定是不支持事务,只保证对单条记录的原子性。

分布式的锁机制Chubby

Chubby是Google设计的提供粗粒度锁服务的一个文件系统,它基于松耦合分布式系统,解决了分布的一致性问题。通过使用Chubby的锁服务,用户可以确保数据操作过程中的一致性。

转载于:https://www.cnblogs.com/llrrtt/p/5377847.html

Google的云计算相关推荐

  1. Google的云计算,你真的安全吗?

    Google文档在3月7日发生了大批用户文件外泄事件.美国隐私保护组织就此提请政府对Google采取措施,使其加强云计算产品的安全性. 云计算可以让用户在全球任何一个角落更新文档,并与他人共享. 如果 ...

  2. 浅析 Google 的云计算平台

    清华大学 陈康 郑纬民   Google的云计算技术实际上是针对Google特定的网络应用程序而定制的.针对内部网络数据规模超大的特点,Google提出了一整套基于分布式并行集群方式的基础架构,利用软 ...

  3. 《云计算》学习笔记2——Google的云计算原理与应用(GFS和MapReduce)

    Google业务 Ø全球最大搜索引擎.Google Maps.Google Earth.Gmail.YouTube等--特点:数据量庞大.面向全球用户提供实时服务 Google云计算平台技术架构 ¢文 ...

  4. Google的云计算引擎与持久化存储磁盘PD

    Google在2013年12月公布了新版本的云计算虚拟计算引擎,简单摘要如下. Google发布了它的弹性云计算引擎(IaaS),包括永久磁盘存储方案, 以及对应的价格. http://googlec ...

  5. 《云计算》学习笔记4——Google的云计算原理与应用(分布式结构化数据表BigTable)

    1.设计动机与目标 (1)设计动机 需要存储的数据种类繁多:Google目前向公众开放的服务很多,需要处理的数据类型也非常多.包括URL.网页内容.用户的个性化设置在内的数据都是Google需要经常处 ...

  6. 《云计算》学习笔记3——Google的云计算原理与应用(分布式锁服务——Chubby)

    一.分布式锁服务 今天,要接触有些难理解的知识点了,这也许就是涉及到当时赵致琢老师强调的在中国没人能有资格讲和讲得清的一块-分布式算法.说实话,这块看了两遍了,到现在还不敢说自己人懂了一半啊·! Ch ...

  7. 云计算学习笔记002---云计算的理解及介绍,google云计算平台实现原理

    什么是云计算: l  说的明白一点: •    云计算其实就更大限度的发挥网络的资源. •    那为什么叫云,为什么不到互联网计算?Cloud l 大多数计算的网络拓扑图都用一块"云&qu ...

  8. 细数云计算产品和技术-Google App Engine

    Google与云计算的发展密切相关,不仅发表很多相关的技术论文,而且也退出很多具有代表性的云计算产品,今天我们一起看一下Google的云产品. 云产品 Google几乎大部分产品都可以被认为是典型的云 ...

  9. Amazon、Google、IBM、Microsoft的云计算平台及其特点

    一.Google 的云计算平台       Google的硬件条件优势,大型的数据中心.搜索引擎的支柱应用,促进Google云计算迅速发展.Google的云计算主要由MapReduce.Google文 ...

最新文章

  1. JAVA设计模式之不变模式
  2. macbook可以装linux,怎样给老旧的 MacBook 安装 Linux
  3. windows7 64位环境下安装apache+mysql5.5+php7经验
  4. 韦老师的开发板和嵌入式书籍赠送
  5. [BZOJ1798][AHOI2009]Seq维护序列 线段树
  6. 吴恩达深度学习的实用层面编程作业:正则化Regularization
  7. Android APP开发文档模板
  8. oracle查看表索引及索引类型
  9. 如果看了此文你还不懂傅里叶变换,那就过来掐死我吧【完整版】
  10. js 调用谷歌插件截图跨域的iframe---FireShot
  11. 成员在类中的偏移量 类成员指针
  12. matlab数据处理的优缺点,数字滤波的优缺点分析
  13. [译文]优雅的现代JavaScript设计模式: 冰冻工厂
  14. 【思维】SCU 4437 Carries
  15. Qt [GC9-2]:从无到有
  16. jy-12-SPRINGMYBATIS02——云笔记05-刘苍松
  17. BIOS功能调用表格
  18. 云服务器ECS和云虚拟主机VPS的区别
  19. Linux Ext2文件系统
  20. 用python做一个简单GUI小软件

热门文章

  1. 5个方法助设计师保持创造力
  2. 安卓Android实现聊天滚动界面
  3. CSAPP读书笔记 第一章
  4. HC-06蓝牙模块的使用
  5. 疫情影响下的物联网发展趋势
  6. 驱动开发:内核封装WSK网络通信接口
  7. Python 29 描述符
  8. 怎么找属于自己最优的2B增长模型?
  9. IDEA Maven配置了阿里云代理还是报错
  10. SpringBoot配置文件yml读取注意问题