云计算的关键技术是什么

Z, ZLW 2429

云计算的关键技术有4点:1、虚拟化;2、大容量分布式存储;3、并行编程模型;4、数据管理。其中“虚拟化”是一种部署计算资源的方法。它分离了应用系统的不同层次,包括硬件、软件、数据、网络、存储等,打破了数据中心、服务器、存储、网络、数据和物理设备之间的划分。

云计算是在网格计算、公共计算和SaaS基础上发展起来的一种新型商业计算模型。它可以将计算任务分配到由大型计算机组成的资源池,使不同的应用系统能够根据需要获取计算能力、存储空间和各种软件服务。云计算的最终目标是作为公共设施向公众提供计算、服务和应用程序,以便人们可以像使用水、电、气和电话一样使用计算机资源。因此,企业在购买硬件和软件时可以节省很多成本。

1、虚拟化

虚拟化是一种部署计算资源的方法。它分离了应用系统的不同层次,包括硬件、软件、数据、网络、存储等,打破了数据中心、服务器、存储、网络、数据和物理设备之间的划分,实现了动态架构,实现了物理资源和虚拟资源的集中管理和动态使用,提高系统的灵活性,降低成本,改进服务,降低管理风险。

在云计算环境中,所有虚拟化解决方案都是系统集成解决方案,包括服务器、存储系统、网络设备、软件和服务。它们包括多层虚拟化技术,如硬件虚拟化、网络基础设施虚拟化、应用程序虚拟化和桌面虚拟化,并根据应用环境灵活组合多层,以实现不同的虚拟化解决方案模型。

2、大容量分布式存储

为了保证高可靠性和经济性,云计算采用分布式存储来保存数据,使用冗余存储来确保存储数据的可靠性,使用高可靠性软件来弥补硬件的不可靠性,从而提供了廉价可靠的大容量分布式储存和计算系统。云计算的数据存储系统是Google文件系统(GFS)和Hadoop团队开发的Hadoop分布式文件系统(HDFS)。

GFS

GFS是一个可扩展的分布式文件系统。它用于需要访问海量数据的大型分布式应用程序。GFS的设计思想不同于传统的文件系统,后者是为处理大规模数据和Google的应用特性而设计的。它运行在廉价的普通硬件上,但可以提供容错功能。它可以为大量用户提供高性能的服务。

HDFS

HDFS是一种分布式文件系统,适用于在商品硬件上运行。它与现有的分布式文件系统非常相似,但也有显著区别,例如,HDFS具有高度的容错性,可以在廉价的硬件上运行;HDFS能够提供高吞吐量的数据访问,因此适用于大规模数据集的应

HDFS采用主/从架构,HDFS集群由一个名称节点和多个数据节点组成。Namenode是一个中心服务器,负责管理文件系统名称空间和客户端对文件的访问。通常,节点有一个datanode,负责管理节点的存储。

从内部看,文件被分割成一个或多个块,保存在一组数据节点上。Namenode实现文件系统的名称空间操作,例如打开、关闭、重命名文件或目录,同时还负责确定从数据块到datanode的映射,在Namenode中建立删除和复制数据块。

Namenode的幺正性大大简化了系统的结构。Namenode负责保存和管理所有HDFS元数据,用户数据的读取或写入在Datanode上,而不是由Namenode进行。

3、并行编程模型

使用户能够高效使用云计算资源,更轻松地享受云计算带来的服务;云计算编程模型必须使任务调度和并行执行对用户和程序员透明。云计算采用MapReduce编程模型,将任务分解为多个子任务,通过两个步骤(Map和Reduce)实现大规模节点的调度和分配。

MapReduce是由Google开发的并行编程系统。它将并行性和容错、数据分布和负载平衡放在数据库中,并将所有数据操作归纳为两个步骤:映射和约简。当程序员将其并行处理过程提交给MapReduce时,他只需要确定两个函数:Map和Reduce。根据输入数据的大小和配置信息,MapReduce可以自动将其初始化为多个相同的Map任务和Reduce任务,然后通过调用Map函数和Reduces函数使用不同的数据块对其进行处理。

MapReduce系统主要由三个模块组成:客户端、主控端和工作端。客户端负责向主节点提交由用户组成的并行处理任务;主节点将自动将用户的任务分解为地图任务和缩减任务,并传递给工作节点;工作节点向主节点请求工作任务,同时,由多个工作节点组成的分布式文件系统将用于存储MapReduce的输入和输出数。

MapReduce主要用于海量数据处理。任务调度策略的一个特征是,将数据所属节点的任务优先级进行调度。这种基于数据位置的调度方案使映射任务能够在请求任务的工作节点保存需要处理的数据时本地读取和处理数据,从而减少网络开销并提高系统性能。

4、数据管理

云计算需要处理和分析海量和分布式数据,因此,数据管理技术必须能够高效地管理大型数据集。云计算系统中有两种数据管理技术:Google的BigTable和Hadoop团队开发的HBase。

BigTable基于GFS、调度程序、锁服务和MapReduce。每个表都是多维稀疏映射。行、列、平板和时间戳是BigTable的基本元素。Tablet是行的集合。BigTable中的数据项根据字典中关键字的顺序排序,每一行动态地传递给平板电脑。每个节点管理大约100个平板电脑。时间戳是一个64位整数,表示数据的不同版本。列族是多个列的聚合,其粒度决定访问权限。

BigTable需要三个组件来执行:一个链接到每个客户端的数据库、一个主服务器和几个平板服务器。主服务器负责将平板电脑安排到平板电脑服务器,负载平衡和垃圾收集等。平板电脑服务器负责管理一组平板电脑,处理读写请求等。

推荐阅读:

云计算的优势是什么 | 公有云是什么 | 云计算的四大部署模式

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部