- 1、本文档共147页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GFS设计动机 GFS系统架构 GFS系统架构 GFS特点 GFS特点 Master容错 Master容错 Chunk Server容错 Chunk Server容错 小结 MapReduce操作执行流程图 MapReduce操作过程 MapReduce操作过程 MapReduce容错 Paxos算法 Paxos算法 Paxos算法 Paxos算法 Paxos算法 Chubby系统设计 Chubby系统设计 Chubby系统设计 Chubby系统设计 Chubby中的Paxos Chubby中的Paxos Chubby中的Paxos Chubby中的Paxos Chubby文件系统 Chubby文件系统 Chubby文件系统 Chubby文件系统 Chubby文件系统 Chubby客户端与服务器端的通信过程 故障处理 故障处理 一致性 安全性 性能优化 设计动机与目标 设计动机与目标 数据模型 数据模型 数据模型 数据模型 系统架构 主服务器 主服务器 主服务器 SSTable及子表基本结构 子表地址结构 子表数据存储及读/写操作 局部性群组(Locality groups) 布隆过滤器(Bloom Filter) 设计目标及方案选择 数据分区和复制 Megastore数据模型 数据模型实例 索引(Index) Bigtable中数据存储情况 Megastore中的事务及并发控制 Megastore中的事务及并发控制 Megastore中的事务机制 Megastore的基本架构 复制的日志 数据读取 数据写入 协调者的可用性 可用性分布情况 产品延迟情况分布 设计目标 基本概念 基本概念 基本概念 监控信息汇总 轻量级核心功能库 二次抽样技术 Dapper存储API Dapper用户界面 Dapper用户界面 Dapper用户界面 Dapper使用经验 Dapper使用经验 Dapper使用经验 ?应用程序的平均读取延迟在万分之一毫秒之内,平均写入延迟在100至400毫秒之间 ?避免Megastore的性能下降,可采取以下三种应对方法(可能结合使用): (1)重新选择路由使客户端绕开出现问题的副本 (2)将出现问题副本上的协调者禁用,确保问题的影响降至最小。 (3)禁用整个副本 平均延迟的分布 需要指出:Megastore已经是Google相对过时的存储技术。Google目前正在使用的存储系统是Spanner架构,Spanner的设计目标是能够控制一百万到一千万台服务器,Spanner最强大之处在于能够在50毫秒之内为数据传递提供通道 大规模分布式系统的监控基础架构Dapper ?基本设计目标 ?Dapper监控系统简介 ?关键性技术 ? 常用Dapper工具 ?Dapper使用经验 用户将一个关键字通过Google的输入框传到Google的后台,在我们看来很简单的一次搜索实际上涉及了众多Google后台子系统,这些子系统的运行状态都需要进行监控 广泛可部署性 不间断的监控 监控系统设计两个基本要求 03 02 01 广泛可部署性的必然要求。监控系统的开销越低,对于原系统的影响就越小,系统的开发人员也就越愿意接受这个监控系统 Google的服务增长速度是惊人的,设计出的系统至少在未来几年里要能够满足Google服务和集群的需求 如果监控系统的使用需要程序开发人员对其底层的一些细节进行调整才能正常工作的话,这个监控系统肯定不是一个完善的监控系统 低开销 应用层透明 可扩展性 大规模分布式系统的监控基础架构Dapper ?基本设计目标 ?Dapper监控系统简介 ?关键性技术 ? 常用Dapper工具 ?Dapper使用经验 ?图中,用户发出请求X,前端A发现该请求的处理需要涉及服务器B和服务器C,因此A又向B和C发出两个RPC(远程过程调用)。B收到后立刻做出响应,但是C在接到后发现它还需要调用服务器D和E才能完成请求X,因此C对D和E分别发出了RPC,D和E接到后分别做出了应答,收到D和E的应答之后C才向A做出响应,在接收到B和C的应答之后A才对用户请求X做出一个应答X ?在监控系统中记录下所有这些消息不难,如何将这些消息记录同特定的请求(本例中的X)关联起来才是分布式监控系统设计中需要解决的关键性问题之一 典型分布式系统的请求及应答过程 方案一 黑盒(Black Box)方案——方案比较轻便,但在消息关系判断过程中,主要是利用一些统计学知识来进行推断,有时不是很准确 方案二 基于注释的方案 ——利用应用程序或中间件给每条记录赋予一个全局性的标示符,借此将相关消息串联起来(Goog
文档评论(0)