云计算技术综述

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1云计算技术综述胡经国本文作者的话本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。现作为云计算学习笔录,奉献给云计算业外读者,作为进一步学习和研究的参考。希望能够得到大家的指教和喜欢!下面是正文一、云计算关键技术1、虚拟化技术在云计算中,虚拟化(Virtualization)是一种资源管理技术。虚拟化技术,是指计算元件在虚拟的基础上而不是在真实的基础上运行。它可以扩大硬件的容量,简化软件的重新配置过程,减少软件虚拟机相关开销和支持更广泛的操作系统。通过虚拟化技术,可实现软件应用与底层硬件相隔离。它包括将单个资源划分为多个虚拟资源的裂分模式;也包括将多个资源整合为一个虚拟资源的聚合模式。例如,可以将一台物理服务器虚拟成为多台逻辑机器;也可以将多台物理服务器虚拟成为一台逻辑机器。虚拟化技术根据对象可分为:计算虚拟化、存储虚拟化、网络虚拟化等。计算虚拟化又分为:系统级虚拟化、应用级虚拟化和桌面虚拟化。在云计算实现中,计算系统虚拟化,是一切建立在“云”上的服务与应用的基础。虚拟化技术目前主要应用在CPU、操作系统、服务器等多个方面,是提高服务效率的最佳解决方案。2、分布式海量数据存储云计算系统由大量服务器组成,同时为大量用户服务。因此,云计算系统采用分布式存储的方式存储数据;用冗余存储的方式(集群计算、数据冗余和分布式存储)保证数据的可靠性。冗余存储的方式,通过任务分解和集群,用低配置机器替代超级计算机的性能,来保证低成本。这种方式保证分布式数据的高可用、高可靠和经济性,即为同一份数据存储多个副本。云计算系统中广泛使用的数据存储系统,是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。2链接:GFSGFS(GoogleFileSystem,Google文件系统),是Google公司为了存储海量搜索数据而设计的专用文件系统。GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,并提供容错功能。它可以给大量的用户提供总体性能较高的服务。链接:HDFSHDFS(HadoopDistributedFileSystem,Hadoop分布式文件系统)被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但是同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS具有高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且,它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些具有超大数据集(largedataset)的应用程序。3、海量数据管理技术云计算需要对分布的、海量的数据进行处理、分析。因此,数据管理技术,必需能够高效地管理大量的数据。云计算系统中的数据管理技术,主要是Google的BTsT~lO数据管理技术和Hadoop团队开发的开源数据管理模块HBase。由于云数据存储管理形式,不同于传统的RDBMS数据管理方式,如何在规模巨大的分布式数据中找到特定的数据,也是云计算数据管理技术所必须解决的问题。同时,由于管理形式的不同,造成传统的SQL数据库接口,无法直接移植到云管理系统中来。目前,一些研究在关注为云数据管理提供RDBMS和SQL的接口,如基于Hadoap子项目HBase和Hive等。另外,在云数据管理方面,如何保证数据安全性和数据访问高效性,也是研究关注的重点问题之一。链接:HBaseHBase(HadoopDatabase,Hadoop数据库),是一个分布式的、面向列的开源数据库。HBase不同于一般的关系型数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是,HBase基于列的而不是基于行的模式。HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。利用HBase技术可在廉价PCServer上搭建起大规模结构化存储集群。链接:RDBMSRDBMS(RelationalDatabaseManagementSystem,关系型数据库管理系统),是将数据组织为相关的行和列的系统;而管理关系型数据库的软件就是关系型数据库管理系统。常用的管理关系型数据库的软件有Oracle、SQLServer3等。链接:SQLSQL(StructuredQueryLanguage,结构化查询语言),是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系型数据库系统;同时也是数据库脚本文件的扩展名。链接:HiveHive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。链接:MapReduceMapReduce是一种分布式并行编程模型,用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归约)”,和它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。4、编程模式云计算提供了分布式计算模式,客观上要求必须有分布式编程模式。云计算采用了一种思想简洁的分布式并行编程模型MapReduce。MapReduce是一种编程模型和任务调度模型。主要用于数据集的并行运算和并行任务的调度处理。在该模式下,用户只需要自行编写Map函数和Reduce函数,即可进行并行计算。其中,在Map(映射)函数中定义各节点上的分块数据的处理方法;而在Reduce(归约或化简)”函数中定义中间结果的保存方法以及最终结果的归纳方法。5、云计算平台管理技术云计算资源规模庞大,服务器数量众多并分布在不同的地点,同时运行着数百种应用。如何有效地管理这些服务器,保证整个系统提供不间断的服务,是巨大的挑战。云计算系统的平台管理技术,能够使大量的服务器协同工作,方便地进行业务部署和开通,快速发现和恢复系统故障,通过自动化、智能化的手段实现大规模系统的可靠运营。云计算平台,也称为云平台。云计算平台可以划分为3类:以数据存储为主的存储型云平台,以数据处理为主的计算型云平台,以及计算和数据存储处理兼顾的综合云计算平台。转向云计算(CloudComputing),是业界将要面临的一个重大转变。各种4云平台(CloudPlatforms)的出现是该转变的最重要环节之一。顾名思义,云平台允许开发者们或是将写好的程序放在“云”里运行,或是使用“云”里提供的服务,或是二者皆有。二、云计算的技术基础图2云计算的技术基础在技术变革不断发生的过程中,网络逐步从基本互联网功能,转换到Web服务时代(典型的Web2.0时代);IT也由企业网络互通性,转换到提供信息架构全面支撑企业核心业务。技术驱动力,也为云计算提供了实现的客观条件,如上图所示,在关键领域云计算技术已经就绪。1、标准化标准化:公共技术、开源技术、硬件标准接口、高度可扩展硬件体系、基础架构平台化、异构相容。公共技术的长期发展,使得基础组件的标准化非常完善,硬件层面的互通已经没有阻碍(即使是非常封闭的大型机,目前也开始支持对外直接接出IP接口)。大规模运营的云计算,能够极大降低单位建设成本。链接:开源软件技术开源软件(OpenSourceSoftware)技术,是指向公众开放软件源代码的技术。它源于一些软件技术发烧友出于技术展现目的或者说是对软件的一种热5爱,将自己辛勤开发的软件源代码无私地发布到互联网社区上与社会共享。他们坚信,好的软件应该是开放的,应该由任何有能力的人参与共同完善,这就是开源技术的理念。互联网企业通过开源软件全面替代传统商业软件,从而得到信息化自主把控能力的过程,被称为软件开源化。2、虚拟化与自动化虚拟化与自动化:计算虚拟化、存储虚拟化、网络安全虚拟化、资源整合、自动化调配、自动化响应、屏蔽基础架构不同组件的异构。虚拟化技术不断向纵深发展,IT资源已经可以通过自动化的架构提供全局动态调度能力,自动化提升了IT架构的伸缩性和扩展性。3、并行、分布式架构并行与分布式:大规模集群技术、分布式数据库、分布式文件系统、可伸缩可扩展的大型软件架构。大规模的计算与数据处理系统,已经在分布式、并行处理的架构上得到广泛应用。计算密集、数据密集、大型数据文件系统,成为云计算的实现基础。从而,要求整个基础架构,具有更高的弹性与扩展性。链接:集群技术集群(Cluster)技术是一种较新的技术。通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益。其任务调度则是集群系统中的核心技术。在这里,集群,是指一组相互独立的、通过高速网络互联的计算机(服务器)。它们构成了一个组即一个集群,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可伸缩性。链接:分布式数据库分布式数据库(DistributedDatabase,DDB),是指数据分别存放在计算机网络中的各台计算机上的数据库。分布式数据库系统,通常使用较小的计算机系统,每台计算机可单独放置在一个地方,每台计算机中都可能有DBMS(数据库管理系统)的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库;位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。分布式数据库,是指利用高速计算机网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。分布式数据库的基本思想,是将原6来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。链接:网络节点网络节点,是指具有独立地址的一台计算机、服务器或其他设备与具有传送或接收数据功能的网络相连。节点可以是计算机、服务器,或工作站、网络用户、打印机和其他与网络连接的设备。在网络中拥有自己唯一网络地址的计算机、服务器等设备都是网络节点。整个网络就是由这许许多多的网络节点组成的;把许多的网络节点用通信线路连接起来,形成一定的几何关系,这就是计算机网络拓扑结构。4、带宽带宽:服务器规模的急剧增长、服务器集群对外提供密集服务、互联网终端数量急剧增长、10G/40G/100G。大规模的数据交换,需要超高带宽的支撑。网络平台在40G/100G能力下,可具备更扁平化的结构,这使得云计算的信息交互以最短路径快速执行。因此,从传统Web服务向云计算服务发展,已经具备技术基础;而企业的IT从信息架构演进到弹性的IT服务,也成为必然。链接:带宽带宽(BandWidth)又叫频宽,是指在固定的时间内可传输的资料数量,亦即在传输管道中可以传递数据的能力。在数字设备中,带宽通常以bps表示,即每秒可传输的位数。在模拟设备中,带宽通常以每秒传送周期或赫兹(Hz)来表示。网络带宽,是指在一个固定的时间内(1秒),能通过的最大位数。就好象高速公路的车道一样,带宽越大,好比车道越多。网络带宽作为衡量网络使用情况的一个重要指标,日益受到人们的普遍关注。它不仅是政府或单位制订网络通信发展策略的重要依据,也是互联网用户和单位选择互联网接入服务商的主要因素之一。链接:网络扁平化结构网络传统结构是由路由器到中心交换机,再向下连接到分交换机的结构。网络扁平化就是取消这种结构,而是由路由器直接到交换机,交换机就开始带工作站了;然后此交换机又连接到另一个交换机,而那个交换机也直接带工作站了。如果需要增加工作站,那么就再增加一个新交换机即可。这使得云计算的信息交互以最短路径快速执行。三、云计算八项核心技术全面解读7确切地说,云计算是大规模分布式计算技术及其配套商业

1 / 30
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功