欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    Google云计算原理-分布式锁服务Chubby.ppt

    • 资源ID:70725231       资源大小:2.87MB        全文页数:54页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Google云计算原理-分布式锁服务Chubby.ppt

    Cloud Computing电子工业出版社 刘鹏主编云计算教材配套课件4课程回顾3GFS的容错措施有哪些?GFS的容错机制Chunk Server容错每个Chunk有多个存储副本(通常是3个),分别存储于不通的服务器上每个Chunk又划分为若干Block(64KB),每个Block对应一个32bit的校验码,保证数据正确(若某个Block错误,则转移至其他Chunk副本)Master容错(影子节点热备)三类元数据:命名空间(目录结构)、Chunk与文件名的映射以及Chunk副本的位置信息前两类通过日志提供容错,Chunk副本信息存储于Chunk Server,Master出现故障时可恢复51、处理流程2、分片方式MapReduce处理流程中各类文件的存储位置在哪里?MapReduce的容错方法?MapReduce的处理优化方法?MapReduce仅能对GFS之上的文件进行处理吗?所有步骤均可控,可灵活处理各类分布式问题除了排序,新增两道题目使用MapReduce实现倒排索引输入:100个文本文档输出:倒排索引任务实现算法,给出数据结构描述、执行过程描述等作业要求同“排序”要求尽可能提高执行效率,节约网络IO带宽除了排序,新增两道题目使用MapReduce实现快速查询查询目标是存储在BigTable之中的网页数据,给定关键字,快速查询含有该内容的网页(假定没有倒排索引)要求设计BigTable存储方式(表含有哪些列、无需关心数据如何取得)设计快速查询的MapReduce处理方法作业要求同“排序”分布式锁服务Chubby11主要用于解决分布式一致性问题在一个分布式系统中,有一组的Process,它们需要确定一个Value。于是每个Process都提出了一个Value,一致性就是指只有其中的一个Value能够被选中作为最后确定的值,并且当这个值被选出来以后,所有的Process都需要被通知到粗粒度的分布式锁服务Chubby是Google为解决分布式一致性问题而设计的提供粗粒度锁服务的文件系文件系文件系文件系统统其他分布式系统可以使用它对共享资源的访问进行同步12需要实现的特性高可用性高可靠性支持粗粒度的建议性锁服务支持小规模文件直接存储不作考虑的特性高性能存储能力1314文件系统中文件操作的权限有哪些?这些权限之间的互斥关系是怎样的?Chubby系统本质上就是一个分布式的、存储大量小文件的文件系统Chubby中的锁就是文件在GFS的例子中,创建文件就是进行“加锁”操作,创建文件成功的那个server其实就是抢占到了“锁”用户通过打开、关闭和存取文件,获取共享锁或者独占锁;并且通过通信机制,向用户发送更新信息1617主节点选举独占锁共享锁数据存取应用获取GFS ChunkServer信息元数据存储18分布式数据表BigTable19为什么需要设计BigTable?Google需要存储的数据种类繁多网页,地图数据,邮件如何使用统一的方式存储各类数据?海量的服务请求如何快速地从海量信息中寻找需要的数据?BigTable:基于GFS和Chubby的分布式存储系统对数据进行结构化存储和管理与GFS的联系20数据存储可靠性高速数据检索与读取存储海量的记录(若干TB)可以保存记录的多个版本21与写操作相比,数据记录读操作占绝大多数工作负载单个节点故障损坏是常见的磁盘是廉价的可以不提供标准接口Google既能控制数据库设计,又能进行应用系统设计22具有广泛的适应性支持Google系列产品的存储需求具有很强的可扩展性根据需要随时加入或撤销服务器应对不断增多的访问请求高可用性单个节点易损,但要确保几乎所有的情况下系统都可用简单性简单的底层系统可减少系统出错概率,为上层开发带来便利23总体上,与关系数据库中的表类似Row KeyTime StampColumn ContentsColumn AnchorColumn“mime”my.look.ca“n.www”T9CNNT8CNN.COMT6“.“Text/htmlT5“.“t3“.“24关系数据库中的表是什么样的?有什么特征?关系数据库中的表设计需要遵循什么原则?行每行数据有一个可排序的关键字和任意列项字符串、整数、二进制串甚至可串行化的结构都可以作为行键表按照行键的“逐字节排序”顺序对行进行有序化处理表内数据非常稀疏,不同的行的列的数完全目可以大不相同URL是较为常见的行键,存储时需要倒排统一地址域的网页连续存储,便于查找、分析和压缩/index.asp/index.asp25列特定含义的数据的集合,如图片、链接等可将多个列归并为一组,称为族(family)采用 族:限定词 的语法规则进行定义fileattr:owning_group”,“fileattr:owning_user”,etc同一个族的数据被压缩在一起保存族是必须的,是BigTable中访问控制的基本单元26时间戳保存不同时期的数据,如“网页快照”“A big table”表中的列可以不受限制地增长表中的数据几乎可以无限地增加通过(row,col,timestamp)查询通过(row,col,MOST_RECENT)查询27无数据校验每行都可存储任意数目的列BigTable不对列的最少数目进行约束任意类型的数据均可存储BigTable将所有数据均看作为字符串数据的有效性校验由构建于其上的应用系统完成一致性针对同一行的多个操作可以分组合并不支持对多行进行修改的操作符28Row KeyTime StampColumn:ContentsCn.wwwT6“.”T5“.”T3“.”Row KeyTime StampColumn:AnchorCn.wwwT9Anchor:CNNT5Anchor:my.look.caCNN.COMRow KeyRow KeyTime StampTime StampColumn:mimeColumn:mimeCn.wwwT6text/htmlRow KeyTime StampColumn ContentsColumn AnchorColumn“mime”my.look.ca“n.www”T9CNNT8CNN.COMT6“.“Text/htmlT5“.“t3“.“29逻辑上的“表”被划分为若干子表(Tablet)每个Tablet由多个SSTable文件组成SSTable文件存储在GFS之上每个子表存储了table的一部分行元数据:起始行键、终止行键如果子表体积超过了阈值(如200M),则进行分割3031为每个子表服务器分配子表,对外提供服务与GFS垃圾回收进行交互,收回废弃的SSTable探测子表服务器的故障与恢复负载均衡有效缓解单点故障3233343536任何对子表的写操作都会记录到一个存储在GFS之上的commit log中每个子表服务器上所有子表变化对应于一个commit log新的数据存储到子表服务器的内存(memtable)中次压缩旧数据存储在SSTable中,而新数据存放在memtable中当memtable体积超过一定阈值,将形成SSTable,并写入GFS每个tablet对应多个SSTable37tablet含有多个SSTable导致查询效率低合并压缩操作读取多个SSTable,创建一个新的SSTable来保持其中的最新数据旧的SSTable删除如果合并压缩操作完成后,tablet只包含一个SSTable,那么该操作也称为主压缩3839新的故障子表服务器内存中的memtable丢失恢复方法按照tablet将该服务器对应的日志分片为每个失效tablet分配新的子表服务器新子表服务器读取对应的分段commit log,并按照日志修改tablet删除commit log中已实施的内容重新对外提供服务40局部性群组(Locality Group)根据需要,将原本不存储在一起的数据,以列族为单位存储至单独的子表如用户对网站排名、语言等分析信息感兴趣,那么可以将这些列族放至单独的子表,减少无用信息读取,改善存取效率布隆过滤器(Bloom Filter)什么是布隆过滤器?判断某个元素是否隶属于集合优点:误判概率低,其存储空间仅为Hash表的1/8至1/4用于判断列键是否位于SSTable中,快速确定某个列键的位置4142Google云计算架构中GFS、MapReduce和BigTable中是否存在集群节点复用的情况?如何复用?节点复用的好处有哪些?Google云计算架构的设计对你有哪些启发?有哪些收获?Google App Engine44Google App Engine是隶属于PaaS类型的云服务一个计算环境,支持Python和Java语言可使用Google的基础服务,如BigTable和GFS等用户仅需提供应用代码,无需服务器维护应用程序可根据访问量和数据存储需要的增长轻松进行扩展45特性动态网络服务功能,能够完全支持常用的网络技术具有持久存储的空间,可支持查询、分类等基本操作具有自主平衡网络和系统的负载、自动进行扩展的功能可对用户的身份进行验证,并且支持使用Google账户发送邮件具有一个功能完整的本地开发环境,开发人员可以在自身的计算机上模拟 Google App Engine环境46沙盒一个虚拟环境将开发者开发的应用程序隔离在自身的安全可靠的环境中,该环境和网络服务器的硬件、系统以及物理位置完全无关仅提供开发人员对基础操作系统的有限访问权限可以对开发人员进行更多的限制只能通过网址抓取API和邮件服务API访问其他计算机其他计算机只能通过HTTP或HTTPS与沙盒应用交互应用程序无法对平台文件系统进行写入操作,只能读取代码文件应用程序必须使用平台的Data Store来存储应用程序运行期间持续存在的数据通过隔离来保证平台和其他开发者的安全47图像操作API开发人员可通过该API对JPEG和PNG图像进行缩放、裁剪、旋转和翻转等操作邮件API为开发人员开发的应用程序提供电子邮件发送服务Memcache API高性能的内存键值缓存,用户可使用应用程序访问该缓存可提高应用程序的性能并减少数据库的负载网址抓取API可以使用HTTP或HTTPS等网址来对数据进行检索48用户API使应用程序与Google帐号集成,支持Google帐号身份认证数据库API为用户提供查询引擎和事务存储服务49print Content-Type:text/plainprint print Hello,world!50Google云计算小结51GoogleGoogleGoogleGoogle云计算应用云计算应用云计算应用云计算应用MapReduceMapReduceMapReduceMapReduceBigTableBigTableBigTableBigTableGFSGFSGFSGFSChubbChubbChubbChubby y y yGoogle云计算应用类型53欢迎访问中国云计算网站 欢迎使用云计算教材 电子工业出版社 刘鹏 主编本讲到此结束

    注意事项

    本文(Google云计算原理-分布式锁服务Chubby.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开