Google云计算基本原理_第1页
Google云计算基本原理_第2页
Google云计算基本原理_第3页
Google云计算基本原理_第4页
Google云计算基本原理_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Google云计算基本原理BigTable为什么需要设计BigTable?Google需要存储的数据种类繁多网页,地图数据,邮件……如何使用统一的方式存储各类数据?海量的服务请求如何快速地从海量信息中寻找需要的数据?BigTable:基于GFS和Chubby的分布式存储系统对数据进行结构化存储和管理与GFS的联系2Google云计算基本原理数据存储可靠性高速数据检索与读取存储海量的记录(若干TB)可以保存记录的多个版本Google的需求3Google云计算基本原理与写操作相比,数据记录读操作占绝大多数工作负载单个节点故障损坏是常见的磁盘是廉价的可以不提供标准接口Google既能控制数据库设计,又能进行应用系统设计假设4Google云计算基本原理具有广泛的适应性支持Google系列产品的存储需求具有很强的可扩展性根据需要随时加入或撤销服务器应对不断增多的访问请求高可用性单个节点易损,但要确保几乎所有的情况下系统都可用简单性简单的底层系统可减少系统出错概率,为上层开发带来便利设计目标5Google云计算基本原理总体上,与关系数据库中的表类似逻辑视图RowKeyTimeStampColumnContentsColumnAnchorColumn“mime”my.look.ca“n.www”T9CNNT8CNN.COMT6“<html>..“Text/htmlT5“<html>..“t3“<html>..“关系数据库中的表是什么样的?有什么特征?关系数据库中的表设计需要遵循什么原则?6Google云计算基本原理行每行数据有一个可排序的关键字和任意列项字符串、整数、二进制串甚至可串行化的结构都可以作为行键表按照行键的“逐字节排序”顺序对行进行有序化处理表内数据非常‘稀疏’,不同的行的列的数完全目可以大不相同URL是较为常见的行键,存储时需要倒排统一地址域的网页连续存储,便于查找、分析和压缩数据模型/index.asp→7Google云计算基本原理列特定含义的数据的集合,如图片、链接等可将多个列归并为一组,称为族(family)采用族:限定词的语法规则进行定义”,“”,etc同一个族的数据被压缩在一起保存族是必须的,是BigTable中访问控制的基本单元数据模型8Google云计算基本原理时间戳保存不同时期的数据,如“网页快照”“Abigtable”表中的列可以不受限制地增长表中的数据几乎可以无限地增加数据模型通过(row,col,timestamp)查询通过(row,col,MOST_RECENT)查询9Google云计算基本原理无数据校验每行都可存储任意数目的列BigTable不对列的最少数目进行约束任意类型的数据均可存储BigTable将所有数据均看作为字符串数据的有效性校验由构建于其上的应用系统完成一致性针对同一行的多个操作可以分组合并不支持对多行进行修改的操作符数据模型10Google云计算基本原理物理视图RowKeyTimeStampColumn:ContentsCn.wwwT6“<html>..”T5“<html>..”T3“<html>..”RowKeyTimeStampColumn:AnchorCn.wwwT9Anchor:CNNT5Anchor:my.look.caCNN.COMRowKeyTimeStampColumn:mimeCn.wwwT6text/htmlRowKeyTimeStampColumnContentsColumnAnchorColumn“mime”my.look.ca“n.www”T9CNNT8CNN.COMT6“<html>..“Text/htmlT5“<html>..“t3“<html>..“11Google云计算基本原理逻辑上的“表”被划分为若干子表(Tablet)每个Tablet由多个SSTable文件组成SSTable文件存储在GFS之上每个子表存储了table的一部分行元数据:起始行键、终止行键如果子表体积超过了阈值(如200M),则进行分割物理视图12Google云计算基本原理体系结构13Google云计算基本原理为每个子表服务器分配子表,对外提供服务与GFS垃圾回收进行交互,收回废弃的SSTable探测子表服务器的故障与恢复负载均衡主节点的职责有效缓解单点故障14Google云计算基本原理子表服务器故障15Google云计算基本原理子表服务器故障16Google云计算基本原理子表服务器故障17Google云计算基本原理数据访问方式18Google云计算基本原理任何对子表的写操作都会记录到一个存储在GFS之上的commitlog中每个子表服务器上所有子表变化对应于一个commitlog新的数据存储到子表服务器的内存(memtable)中次压缩旧数据存储在SSTable中,而新数据存放在memtable中当memtable体积超过一定阈值,将形成SSTable,并写入GFS每个tablet对应多个SSTable数据写的流程19Google云计算基本原理tablet含有多个SSTable导致查询效率低合并压缩操作读取多个SSTable,创建一个新的SSTable来保持其中的最新数据旧的SSTable删除如果合并压缩操作完成后,tablet只包含一个SSTable,那么该操作也称为主压缩合并压缩20Google云计算基本原理数据存储与读取流程21Google云计算基本原理新的故障子表服务器内存中的memtable丢失恢复方法按照tablet将该服务器对应的日志分片为每个失效tablet分配新的子表服务器新子表服务器读取对应的分段commitlog,并按照日志修改tablet删除commit

log中已实施的内容重新对外提供服务子表服务器故障恢复22Google云计算基本原理局部性群组(LocalityGroup)根据需要,将原本不存储在一起的数据,以列族为单位存储至单独的子表如用户对网站排名、语言等分析信息感兴趣,那么可以将这些列族放至单独的子表,减少无用信息读取,改善存取效率布隆过滤器(BloomFilter)什么是布隆过滤器?判断某个元素是否隶属于集合优点:误判概率低,其存储空间仅为Hash表的1/8至1/4用于判断列键是否位于SSTable中,快速确定某个列键的位置性能优化23Google云计算基本原理BigTable小结24Google云计算基本原理Google云计算架构中GFS、MapReduce和BigTable中是否存在集群节点复用的情况?如何复用?节点复用的好处有哪些?Google云计算架构的设计对你有哪些启发?有哪些收获?综合讨论Google云计算基本原理Goolge的云计算GoogleAppEngine26Google云计算基本原理Google

App

Engine是隶属于PaaS类型的云服务一个计算环境,支持Python和Java语言可使用Google的基础服务,如BigTable和GFS等用户仅需提供应用代码,无需服务器维护应用程序可根据访问量和数据存储需要的增长轻松进行扩展简介27Google云计算基本原理特性动态网络服务功能,能够完全支持常用的网络技术具有持久存储的空间,可支持查询、分类等基本操作具有自主平衡网络和系统的负载、自动进行扩展的功能可对用户的身份进行验证,并且支持使用Google账户发送邮件具有一个功能完整的本地开发环境,开发人员可以在自身的计算机上模拟

GoogleAppEngine环境应用程序环境28Google云计算基本原理沙盒一个虚拟环境将开发者开发的应用程序隔离在自身的安全可靠的环境中,该环境和网络服务器的硬件、系统以及物理位置完全无关仅提供开发人员对基础操作系统的有限访问权限可以对开发人员进行更多的限制只能通过网址抓取API和邮件服务API访问其他计算机其他计算机只能通过HTTP或HTTPS与沙盒应用交互应用程序无法对平台文件系统进行写入操作,只能读取代码文件应用程序必须使用平台的DataStore来存储应用程序运行期间持续存在的数据……应用程序环境通过隔离来保证平台和其他开发者的安全29Google云计算基本原理图像操作API开发人员可通过该API对JPEG和PNG图像进行缩放、裁剪、旋转和翻转等操作邮件API为开发人员开发的应用程序提供电子邮件发送服务MemcacheAPI高性能的内存键值缓存,用户可使用应用程序访问该缓存可提高应用程序的性能并减少数据库的负载网址抓取API可以使用HTTP或HTTPS等网址来对数据进行检索平台服务30Google云计算基本原理用户API使应用程序与Google帐号集成,支持Google帐号身

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论