版主
数码信息狗
- 积分
- 487
- 获赠鲜花
- 467 朵
- 个人财富
- 1921 金币
- 注册时间
- 2010-11-28
|
楼主 |
发表于 2011-2-2 21:04
|
显示全部楼层
友情提示: 请千万不要登入陌生网站输入QQ号和密码,以防诈骗。
联系我时,请说明是从哪儿看到的,谢谢。
四、云计算的核心技术5 _' F1 e( K K$ m' J g P
1 j5 p) T1 T( S6 f- ]6 r: |
云计算系统运用了许多技术,其中以编程模型、数据管理技术、数据存储技术、虚拟化技术、云计算平台管理技术最为关键。
9 t- T( g1 D; L# }$ S: r: E# ]! _- c# U0 \. R* R4 ?7 g
(1)编程模型
+ T' y6 p5 a, f" P1 z; |+ i8 Q MapReduce是Google开发的java、Python、C++编程模型,它是一种简化的分布式编程模型和高效的任务调度模型,用于大规模数据集(大于1TB)的并行运算。严格的编程模型使云计算环境下的编程十分简单。MapReduce模式的思想是将要执行的问题分解成Map(映射)和 Reduce(化简)的方式,先通过Map程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过Reduce程序将结果汇整输出。0 E! h$ y% L6 G
" a" _! U' a7 v. u+ T) X) ?
(2) 海量数据分布存储技术" I8 G: \, L& D4 y, [% ?3 t" M( Z: m
云计算系统由大量服务器组成,同时为大量用户服务,因此云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。云计算系统中广泛使用的数据存储系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。
' f2 |2 E( r. W8 V) P Z, h GFS即Google文件系统(Google File System),是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。GFS的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。
@6 C- c+ F2 B9 c0 C) d( M8 P 客户与主服务器的交换只限于对元数据的操作,所有数据方面的通信都直接和块服务器联系,这大大提高了系统的效率,防止主服务器负载过重。; D0 a5 w/ B5 m8 v1 P; ~7 {' y! Z. N7 l
# c' b0 C* ?8 T x0 S4 ?3 @; r
(3) 海量数据管理技术8 J1 V* h& ~3 x& k5 ]) E: H
云计算需要对分布的、海量的数据进行处理、分析,因此,数据管理技术必需能够高效的管理大量的数据。云计算系统中的数据管理技术主要是Google的BT(BigTable)数据管理技术和Hadoop团队开发的开源数据管理模块HBase。
( F/ b. A$ N# n Google的很多项目使用BT来存储数据,包括网页查询,Google earth和Google金融。这些应用程序对BT的要求各不相同:数据大小(从URL到网页到卫星图象)不同,反应速度不同(从后端的大批处理到实时数据服务)。对于不同的要求,BT都成功的提供了灵活高效的服务。1 {& h" I$ p5 f8 K' P
- P9 k& y, y* _2 p6 d2 F4 R (4)虚拟化技术& l: O7 ?- S0 M# @) V, Y, E) p3 G
通过虚拟化技术可实现软件应用与底层硬件相隔离,它包括将单个资源划分成多个虚拟资源的裂分模式,也包括将多个资源整合成一个虚拟资源的聚合模式。虚拟化技术根据对象可分成存储虚拟化、计算虚拟化、网络虚拟化等,计算虚拟化又分为系统级虚拟化、应用级虚拟化和桌面虚拟化。
0 q) h. v" C8 ^7 D7 i! ?' O3 v8 Q6 q
(5)云计算平台管理技术& M, W( ?. h" T @: t
云计算资源规模庞大,服务器数量众多并分布在不同的地点,同时运行着数百种应用,如何有效的管理这些服务器,保证整个系统提供不间断的服务是巨大的挑战。
' \* t: ]+ h& f0 l- d 云计算系统的平台管理技术能够使大量的服务器协同工作,方便的进行业务部署和开通,快速发现和恢复系统故障,通过自动化、智能化的手段实现大规模系统的可靠运营。 |
|