- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
Google云计算关键技术MapReduce BigTable GFS Chubby 微软的 ...
展开查看详情
1 .内容提纲 云计算概念与现状 Google 文件系统 Google MapReduce Google Bigtable 大云数据挖掘系统
2 .云计算概念与现状
3 .云计算的起源
4 .云计算发展的驱动因素
5 .云计算的定义 云计算是一种商业计算模型。它将 计算任务分布在大量计算机构成的资 源池上,使各种应用系统能够根据需 要获取计算力、存储空间和信息服 务。
6 .云计算技术体系结构
7 .
8 .Google 云计算关键技术 MapReduce BigTable Chubby GFS ◦Google 文件系统 GFS(Google File System) ◦并行数据处理 MapReduce ◦结构化数据表 BigTable ◦分布式锁管理 Chubby
9 .
10 .
11 .微软的节能措施
12 .Google 云计算原理 分布式文件系统 GFS Google File System 12
13 .Google 设计 GFS 的动机 Google 需要一个支持海量存储的文件系统 ◦购置昂贵的分布式文件系统与硬件? 是否可以在一堆廉价且不可靠的硬件上构建 可靠的分布式文件系统? 13
14 .Google 设计 GFS 的动机 为什么不使用当时现存的文件系统? ◦Google 所面临的问题与众不同 不同的工作负载,不同的设计优先级(廉价、不可靠的硬 件) ◦需要设计与 Google 应用和负载相符的文件系统 14
15 .GFS 的假设与目标 硬件出错是正常而非异常 ◦系统应当由大量廉价、易损的硬件组成 ◦必须保持文件系统整体的可靠性 主要负载是流数据读写 ◦主要用于程序处理批量数据,而非与用户的交互或随机读 写 ◦数据写主要是“追加写”,“插入写”非常少 需要存储大尺寸的文件 ◦存储的文件尺寸可能是 GB 或 TB 量级,而且应当能支持存 储成千上万的大尺寸文件 15
16 .GFS 的设计思路 将文件划分为若干块( Chunk )存储 ◦每个块固定大小( 64M ) 通过冗余来提高可靠性 ◦每个数据块至少在 3 个数据块服务器上冗余 ◦数据块损坏概率? 通过单个 master 来协调数据访问、元数据存储 ◦结构简单,容易保持元数据一致性 无缓存 ◦Why? 16
17 .GFS 的架构 单一 Master, 若干 ChunkServer GFS 的架构有什么问题吗? 17
18 .18
19 .单一 Master 问题 分布式系统设计告诉我们: ◦这是单点故障 ◦这是性能瓶颈 GFS 的解决办法 ◦单点故障问题 采用多个(如 3 个)影子 Master 节点进行热备, 一旦主节点损坏,立刻选举一个新的主节点服务 19
20 .单一 Master 问题 GFS 的解决办法 ◦性能瓶颈问题 尽可能减少数据存取中 Master 的参与程度 不使用 Master 读取数据,仅用于保存元数据 Simple, and good enough! 客户端缓存元数据 采用大尺寸的数据块( 64M ) 数据修改顺序交由 Primary Chunk Server 完成 20
21 .Master 节点的任务 存储元数据 文件系统目录管理与加锁 与 ChunkServer 进行周期性通信 ◦发送指令,搜集状态,跟踪数据块的完好性 数据块创建、复制及负载均衡 ◦对 ChunkServer 的空间使用和访问速度进行负载均衡,平 滑数据存储和访问请求的负载 ◦对数据块进行复制、分散到 ChunkServer 上 ◦一旦数据块冗余数小于最低数,就发起复制操作 21
22 .Master 节点的任务 垃圾回收 ◦在日志中记录删除操作,并将文件改名隐藏 ◦缓慢地回收隐藏文件 ◦与传统文件删除相比更简单、更安全 陈旧数据块删除 ◦探测陈旧的数据块,并删除 22
23 .GFS 架构的特点 采用中心服务器模式 ◦可以方便地增加 Chunk Server ◦Master 掌握系统内所有 Chunk Server 的情况,方便进行 负载均衡 ◦不存在元数据的一致性问题 23
24 .GFS 架构的特点 不缓存数据 ◦GFS 的文件操作大部分是流式读写,不存在大量的重复读 ? 写,使用 Cache 对性能提高不大 ◦Chunk Server 上的数据存取使用本地文件系统,如果某个 Chunk 读取频繁,文件系统具有 Cache ◦从可行性看, Cache 与实际数据的一致性维护也极其复杂 24
25 .GFS 架构的特点 在用户态下实现 ◦直接利用 Chunk Server 的文件系统存取 Chunk ,实现简 单 ◦用户态应用调试较为简单,利于开发 ◦用户态的 GFS 不会影响 Chunk Server 的稳定性 提供专用的访问接口 ◦未提供标准的 POSIX 访问接口 ◦降低 GFS 的实现复杂度 25
26 .GFS 的容错方法 GFS 的容错机制 ◦Chunk Server 容错 每个 Chunk 有多个存储副本(通常是 3 个),分别存储于不 通的服务器上 每个 Chunk 又划分为若干 Block ( 64KB ),每个 Block 对应 一个 32bit 的校验码,保证数据正确(若某个 Block 错误,则 转移至其他 Chunk 副本) 26
27 .GFS 的性能 27
28 .Google 云计算原理 并行数据处理模型 MapReduce
29 .并行计算基础 摩尔定律 ◦集成电路芯片上所集成的电路的数目, 每隔 18 个月就翻一番,同时性能也提升 一倍 Gordon Moore