云计算核心技术

云计算技术是基于云计算平台及商业模式应用的,包括网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,灵活部署,按需使用。

云计算技术将成为企业IT技术的重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站,以及当下热门的大数据和人工智能等业务和应用。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。


云计算核心技术

1 虚拟化技术

虚拟化技术是指计算单元在虚拟的基础上而不是真实的基础上运行,它可以扩大硬件的容量,简化软件的重新配置过程,减少软件虚拟机相关开销和支持更广泛的操作系统等。通过虚拟化技术可实现软件应用与底层硬件相隔离,它包括将单个资源划分成多个虚拟资源的裂分模式,也包括将多个资源整合成一个虚拟资源的聚合模式。虚拟化技术根据对象可分成存储虚拟化、计算虚拟化、网络虚拟化等,计算虚拟化又分为系统级虚拟化、应用级虚拟化和桌面虚拟化等。在云计算实现中。计算系统虚拟化是一切建立在“云”上的服务与应用的基础。虚拟化技术主要应用在CPU、操作系统、服务器等多个方面,是提高服务效率的最佳解决方案。虚拟化技术有硬件虚拟化、软件虚拟化,全虚拟化、半虚拟化、操作系统虚拟化、桌面虚拟化等多种方式。目前典型的硬件虚拟化有Intel的VT-x和AMD的AMD-V,典型的软件虚拟化有微软的Hyper-v、VMware的ESX、KVM、Xen等。

2 云平台管理技术

云计算资源规模庞大,服务器数量众多并分布在不同的地点,同时运行着数百数千种应用,如何有效的管理这些服务器,保证整个系统提供不间断的服务是巨大的挑战。云计算系统的平台管理技术能够使大量的服务器协同工作,方便的进行业务部署和开通,快速发现和恢复系统故障,通过自动化、智能化的手段实现大规模系统的可靠运营。目前流行的云平台管理技术有OpenStack、CloudStack、ConVirt、oVirt等。

3 分布式数据存储

云计算系统由大量服务器组成,同时为大量用户服务,因此云计算系统采用分布式存储的方式存储数据,用冗余存储的方式(集群计算、数据冗余和分布式存储)保证数据的可靠性。冗余的方式通过任务分解和集群,用低配机器替代超级计算机的性能来保证低成本,这种方式保证分布式数据的高可用、高可靠和经济性,即为同一份数据存储多个副本。云计算系统中广泛使用的数据存储系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。

4 数据管理技术

云计算需要对分布的、海量的数据进行处理和分析,因此,数据管理技术必需能够高效的管理大量的数据。云计算系统中的数据管理技术主要是Google的BigTable数据管理技术和Hadoop团队开发的开源数据管理模块HBase。由于云数据存储管理形式不同于传统的RDBMS数据管理方式,如何在规模巨大的分布式数据中找到特定的数据,也是云计算数据管理技术所必须解决的问题。同时,由于管理形式的不同造成传统的SQL数据库接口无法直接移植到云管理系统中来,研究在关注为云数据管理提供RDBMS和SQL的接口,如基于Hadoap子项目HBase和Hive等。另外,在云数据管理方面,如何保证数据安全性和数据访问高效性也是研究关注的重点问题之一。

5 编程方式

云计算提供了分布式的计算模式,客观上要求必须有分布式的编程模式。云计算采用了一种思想简洁的分布式并行编程模型Map-Reduce。Map-Reduce是一种编程模型和任务调度模型。主要用于数据集的并行运算和并行任务的调度处理。在该模式下,用户需要将原来在单带计算机上的并行程序进行分解,只需要自行编写Map函数和Reduce函数即可进行并行计算。其中,Map函数中定义各节点上的分块数据的处理方法,而Reduce函数中定义中间结果的保存方法以及最终结果的归纳方法。

针对云计算相关核心技术,个人认为虚拟化技术和平台管理技术,是其他技术的基础和核心,像数据分布式存储、数据管理技术以及编程方式则跟具体应用关心紧密。数据管理技术则偏向于具体的应用(如大数据);编程方式则体现了云计算的计算模式(人工智能);分布式存储则是数据可靠性的保证(数据安全)。

推荐阅读更多精彩内容