- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
电子工业出版社 刘鹏主编《云计算》教材配套课件4;课程回顾;;GFS的容错机制
Chunk Server容错
每个Chunk有多个存储副本(通常是3个),分别存储于不通的服务器上
每个Chunk又划分为若干Block(64KB),每个Block对应一个32bit的校验码,保证数据正确(若某个Block错误,则转移至其他Chunk副本)
Master容错(影子节点热备)
三类元数据:命名空间(目录结构)、Chunk与文件名的映射以及Chunk副本的位置信息
前两类通过日志提供容错,Chunk副本信息存储于Chunk Server,Master出现故障时可恢复
;;MapReduce处理流程中各类文件的存储位置在哪里?
MapReduce的容错方法?
MapReduce的处理优化方法?
MapReduce仅能对GFS之上的文件进行处理吗?;所有步骤均可控,可灵活处理各类分布式问题;除了排序,新增两道题目
使用MapReduce实现倒排索引
输入:100个文本文档
输出:倒排索引
任务
实现算法,给出数据结构描述、执行过程描述等
作业要求同“排序”
要求尽可能提高执行效率,节约网络IO带宽;除了排序,新增两道题目
使用MapReduce实现快速查询
查询目标是存储在BigTable之中的网页数据,给定关键字,快速查询含有该内容的网页(假定没有倒排索引)
要求
设计BigTable存储方式(表含有哪些列、无需关心数据如何取得)
设计快速查询的MapReduce处理方法
作业要求同“排序”;分布式锁服务Chubby;主要用于解决分布式一致性问题
在一个分布式系统中,有一组的Process,它们需要确定一个Value。于是每个Process都提出了一个Value,一致性就是指只有其中的一个Value能够被选中作为最后确定的值,并且当这个值被选出来以后,所有的Process都需要被通知到
粗粒度的分布式锁服务
Chubby是Google为解决分布式一致性问题而设计的提供粗粒度锁服务的文件系统
其他分布式系统可以使用它对共享资源的访问进行同步
;需要实现的特性
高可用性
高可靠性
支持粗粒度的建议性锁服务
支持小规模文件直接存储
不作考虑的特性
高性能
存储能力;;;Chubby系统本质上就是一个分布式的、存储大量小文件的文件系统
Chubby中的锁就是文件
在GFS的例子中,创建文件就是进行“加锁”操作,创建文件??功的那个server其实就是抢占到了“锁”
用户通过打开、关闭和存取文件,获取共享锁或者独占锁;并且通过通信机制,向用户发送更新信息
;;主节点选举
独占锁
共享锁
数据存取应用
获取GFS ChunkServer信息
元数据存储
……;分布式数据表BigTable;为什么需要设计BigTable?
Google需要存储的数据种类繁多
网页,地图数据,邮件……
如何使用统一的方式存储各类数据?
海量的服务请求
如何快速地从海量信息中寻找需要的数据?
BigTable:基于GFS和Chubby的分布式存储系统
对数据进行结构化存储和管理
与GFS的联系
;数据存储可靠性
高速数据检索与读取
存储海量的记录(若干TB)
可以保存记录的多个版本;与写操作相比,数据记录读操作占绝大多数工作负载
单个节点故障损坏是常见的
磁盘是廉价的
可以不提供标准接口
Google既能控制数据库设计,又能进行应用系统设计;具有广泛的适应性
支持Google系列产品的存储需求
具有很强的可扩展性
根据需要随时加入或撤销服务器
应对不断增多的访问请求
高可用性
单个节点易损,但要确保几乎所有的情况下系统都可用
简单性
简单的底层系统可减少系统出错概率,为上层开发带来便利
;总体上,与关系数据库中的表类似;行
每行数据有一个可排序的关键字和任意列项
字符串、整数、二进制串甚至可串行化的结构都可以作为行键
表按照行键的“逐字节排序”顺序对行进行有序化处理
表内数据非常‘稀疏’,不同的行的列的数完全目可以大不相同
URL是较为常见的行键,存储时需要倒排
统一地址域的网页连续存储,便于查找、分析和压缩
;列
特定含义的数据的集合,如图片、链接等
可将多个列归并为一组,称为族(family)
采用 族:限定词 的语法规则进行定义
fileattr:owning_group”, “fileattr:owning_user”, etc
同一个族的数据被压缩在一起保存
族是必须的,是BigTable中访问控制的基本单元
;时间戳
保存不同时期的数据,如“网页快照”
“A big table”
表中的列可以不受限制地增长
表中的数据几乎可以无限地增加
;无数据校验
每行都可存储任意数目的列
BigTable不对列的最少数目进行约束
任意类型的数据均可存储
BigTab
原创力文档


文档评论(0)