- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
刘鹏 gloud@126.com
中国云计算:
中国网格: ;内 容 提 纲;云计算的起源;云计算发展的驱动因素;云计算的定义;云计算技术体系结构;Google云计算关键技术;微软的节能措施;分布式文件系统GFS
Google File System;Google需要一个支持海量存储的文件系统
购置昂贵的分布式文件系统与硬件?
;为什么不使用当时现存的文件系统?
Google所面临的问题与众不同
不同的工作负载,不同的设计优先级(廉价、不可靠的硬件)
需要设计与Google应用和负载相符的文件系统
;硬件出错是正常而非异常
系统应当由大量廉价、易损的硬件组成
必须保持文件系统整体的可靠性
主要负载是流数据读写
主要用于程序处理批量数据,而非与用户的交互或随机读写
数据写主要是“追加写”,“插入写”非常少
需要存储大尺寸的文件
存储的文件尺寸可能是GB??TB量级,而且应当能支持存储成千上万的大尺寸文件
;将文件划分为若干块(Chunk)存储
每个块固定大小(64M)
通过冗余来提高可靠性
每个数据块至少在3个数据块服务器上冗余
数据块损坏概率?
通过单个master来协调数据访问、元数据存储
结构简单,容易保持元数据一致性
无缓存
Why?
;单一Master, 若干ChunkServer;;分布式系统设计告诉我们:
这是单点故障
这是性能瓶颈
GFS的解决办法
单点故障问题;GFS的解决办法
性能瓶颈问题;存储元数据
文件系统目录管理与加锁
与ChunkServer进行周期性通信
发送指令,搜集状态,跟踪数据块的完好性
数据块创建、复制及负载均衡
对ChunkServer的空间使用和访问速度进行负载均衡,平滑数据存储和访问请求的负载
对数据块进行复制、分散到ChunkServer上
一旦数据块冗余数小于最低数,就发起复制操作
;垃圾回收
在日志中记录删除操作,并将文件改名隐藏
缓慢地回收隐藏文件
与传统文件删除相比更简单、更安全
陈旧数据块删除
探测陈旧的数据块,并删除
;采用中心服务器模式
可以方便地增加Chunk Server
Master掌握系统内所有Chunk Server的情况,方便进行负载均衡
不存在元数据的一致性问题
;不缓存数据
GFS的文件操作大部分是流式读写,不存在大量的重复读写,使用Cache对性能提高不大
Chunk Server上的数据存取使用本地文件系统,如果某个Chunk读取频繁,文件系统具有Cache
从可行性看,Cache与实际数据的一致性维护也极其复杂
;在用户态下实现
直接利用Chunk Server的文件系统存取Chunk,实现简单
用户态应用调试较为简单,利于开发
用户态的GFS不会影响Chunk Server的稳定性
提供专用的访问接口
未提供标准的POSIX访问接口
降低GFS的实现复杂度
;GFS的容错机制
Chunk Server容错
每个Chunk有多个存储副本(通常是3个),分别存储于不通的服务器上
每个Chunk又划分为若干Block(64KB),每个Block对应一个32bit的校验码,保证数据正确(若某个Block错误,则转移至其他Chunk副本);;并行数据处理模型MapReduce;摩尔定律
集成电路芯片上所集成的电路的数目,每隔18个月就翻一番,同时性能也提升一倍;“免费的性能大餐”?
Andy given, and Bill taken away
软件算法、数据结构似乎不再重要,因为处理器性能不断提升;摩尔定律正在走向终结…
单芯片容纳晶体管的增加,对制造工艺提出要求
CPU制造18nm技术,电子泄漏问题
CPU主频已达3GHz时代,难以继续提高
散热问题(发热太大,且难以驱散)
功耗太高
;在多核时代生存,必须考虑并发问题
不存在解决多核编程问题的银弹, 不存在可以简单地将并发编程问题化解掉的工具, 开发高性能的并行程序必须要求开发者从根本上改变其编程方法
从某种意义上来说,这不仅仅是要改变50年来顺序程序设计的工艺传统, 而且是要改变数百万年来人类顺序化思考问题的习惯;串行编程
早期的计算里,程序一般是被串行执行的
程序是指令的序列,在单处理器的机器里,程序从开始到结束,这些指令一条接一条的执行
并行编程
一道处理可以被划分为几部分,然后它们可以并发地执行
各部分的指令分别在不同的CPU上同时运行,这些CPU可以存在于单台机器中,也可以存在于多台机器上,它们通过连接起来共同运作;什么样的问题适合并行计算?
斐波那契序列(Fibonacci)的计算?;什么样的问题适合并行计算?
如果有大量结构一致的数据要处理,且数据可以分解成相同大小的部分, 那我们就可以设法使这道处理变成并行;计算问题简单,但求解困难
您可能关注的文档
最近下载
- SCADA(电力监控)系统介绍.pptx VIP
- 2025年机关事业单位工人汽车驾驶员高级、技师国家题库练习题(附答案).docx VIP
- 班级生活有规则教学设计.doc VIP
- CMF中国宏观经济分析与预测报告(2025年中期) 稳舵远航的中国宏观经济.docx
- QGDW 11399-2015 架空输电线路无人机巡检作业安全工作规程.docx VIP
- 中国药物性肝损伤诊治指南2023版解读.pptx VIP
- 施工测量专项施方案.doc VIP
- 2024年春季四川凉山州普格县一村一幼辅导员招聘74人笔试备考题库及答案解析.docx VIP
- 防爆电气安装规范及验收标准制定.docx VIP
- 市政集团笔试题库及答案.pdf
文档评论(0)