网站大量收购闲置独家精品文档,联系QQ:2885784924

云计算第二章.ppt

  1. 1、本文档共86页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
云计算第二章

设计动机与目标 需要存储的数据种类繁多:Google目前向公众开放的服务很多,需要处理的数据类型也非常多。包括URL、网页内容、用户的个性化设置在内的数据都是Google需要经常处理的 海量的服务请求:Google运行着目前世界上最繁忙的系统,它每时每刻处理的客户服务请求数量是普通的系统根本无法承受的 商用数据库无法满足Google的需求:一方面现有商用数据库设计着眼点在于通用性,根本无法满足Google的苛刻服务要求;另一方面对于底层系统的完全掌控会给后期的系统维护、升级带来极大的便利 设计动机 2.4 分布式结构化数据表Bigtable 设计动机与目标 基本目标 高可用性 Bigtable设计的重要目标之一就是确保几乎所有的情况下系统都可用 广泛的适用性 Bigtable是为了满足系列Google产品而非特定产品存储要求 简单性 底层系统简单性既可减少系统出错概率,也为上层应用开发带来便利 很强的可扩展性 根据需要随时可以加入或撤销服务器 2.4 分布式结构化数据表Bigtable 2.4 分布式结构化数据表Bigtable ?设计动机与目标 ?数据模型 ?系统架构 ?主服务器 ?子表服务器 ?性能优化 数据模型 ?Bigtable是一个分布式多维映射表,表中的数据通过一个行关键字(Row Key)、一个列关键字(Column Key)以及一个时间戳(Time Stamp)进行索引 ?Bigtable对存储在其中的数据不做任何解析,一律看做字符串 ?Bigtable的存储逻辑可以表示为: (row:string, column:string, time:int64)→string Bigtable数据模型 2.4 分布式结构化数据表Bigtable 数据模型 ?行 ?Bigtable的行关键字可以是任意的字符串,但是大小不能超过64KB。Bigtable和传统的关系型数据库有很大不同,它不支持一般意义上的事务,但能保证对于行的读写操作具有原子性(Atomic) ?表中数据都是根据行关键字进行排序的,排序使用的是词典序。 ?一个典型实例,其中n.www就是一个行关键字。不直接存储网页地址而将其倒排是Bigtable的一个巧妙设计。这样做至少会带来以下两个好处 ?同一地址域的网页会被存储在表中的连续位置,有利于用户查找和分析 ?倒排便于数据压缩,可以大幅提高压缩率 2.4 分布式结构化数据表Bigtable 数据模型 ?列 ?Bigtable并不是简单地存储所有的列关键字,而是将其组织成所谓的列族(Column Family),每个族中的数据都属于同一个类型,并且同族的数据会被压缩在一起保存。引入了列族的概念之后,列关键字就采用下述的语法规则来定义: ?族名:限定词(family:qualifier) ?族名必须有意义,限定词则可以任意选定 ?图中,内容(Contents)、锚点(Anchor)都是不同的族。而和my.look.ca则是锚点族中不同的限定词 ?族同时也是Bigtable中访问控制(Access Control)基本单元,也就是说访问权限的设置是在族这一级别上进行的 2.4 分布式结构化数据表Bigtable 数据模型 ?时间戳 ?Google的很多服务比如网页检索和用户的个性化设置等都需要保存不同时间的数据,这些不同的数据版本必须通过时间戳来区分。图2中内容列的t3、t5和t6表明其中保存了在t3、t5和t6这三个时间获取的网页。Bigtable中的时间戳是64位整型数,具体的赋值方式可以采取系统默认的方式,也可以用户自行定义 ?为了简化不同版本的数据管理,Bigtable目前提供了两种设置:一种是保留最近的N个不同版本,图中数据模型采取的就是这种方法,它保存最新的三个版本数据。另一种就是保留限定时间内的所有不同版本,比如可以保存最近10天的所有不同版本数据。失效的版本将会由Bigtable的垃圾回收机制自动处理 2.4 分布式结构化数据表Bigtable 分布式结构化数据表Bigtable ?设计动机与目标 ?数据模型 ?系统架构 ?主服务器 ?子表服务器 ?性能优化 系统架构 一个分布式的任务调度器,主要被用来处理分布式系统队列分组和任务调度 2.4 分布式结构化数据表Bigtable 系统架构 ?在Bigtable中Chubby主要有以下几个作用: (1)选取并保证同一时间内只有一个主服务器(Master Server) (2)获取子表的位置信息 (3)保存Bigtable的模式信息及访问控制列表

文档评论(0)

过各自的生活 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档