我国的云计算系统采用了很多技术,其中编程模型、数据管理技术、数据存储技术、虚拟化技术和云计算平台管理技术较为关键。
(1)编程模型
MapReduce是Google开发的java、Python和C++编程模型。它是一个简单的分布式编程模型和高效的任务调度模型,在大规模数据集(大于1TB)上使用并行操作。严格的编程模型使得云计算环境中的编程变得非常容易。MapReduce模式的思想是将要实现的问题分解为Map(映射)和Reduce(化简)。首先通过Map程序将数据切割成不相关的块,然后分配(调度)到一个大卷中。计算机进行处理,达到分布式运算的结果,然后通过Reduce程序汇总并发布。
(2)海量数据分布式存储技术
云计算系统由大量服务器组成,同时为大量用户服务。因此,云计算系统采用分布式存储来存储数据,利用冗余存储保证数据的可靠性。云计算系统中广泛使用的数据存储系统是Google的GFS和HDFS,HDFS是Hadoop团队开的GFS的开源实现。
(三)大规模数据管理技术
云计算需要分布式、大规模的数据处理和分析。因此,数据管理技术必须能够有效地管理大量数据。云计算系统中的数据管理技术主要是Google的BT(BigTable)数据管理技术和Hadoop团队开发的HBase开源数据管理模块。
(4)虚拟化技术
虚拟化技术可以将软件应用程序与底层硬件隔离。它包括一种分割模式,将一个资源分割成多个虚拟资源。它还包括将多个资源集成为单个虚拟资源的聚合模式。虚拟化技术按对象可分为存储虚拟化、计算虚拟化、网络虚拟化等。计算虚拟化又分为系统级虚拟化、应用级虚拟化和桌面虚拟化。
(5)云计算平台管理技术
大规模的云计算资源,许多服务器分布在不同地点,同时运行数百个应用程序。如何管理对于这些服务器来说,保证整个系统提供不间断的服务是一个很大的挑战。
云计算系统平台管理技术可以使大量服务器协同工作,简化业务部署和激活,快速发现和恢复系统故障,通过自动化、智能化运行实现大规模系统可靠性。
上一篇:云计算入门基础架构有哪些
下一篇:云计算的基础架构平台