第2章-云计算与大数据的相关技术54_第1页
第2章-云计算与大数据的相关技术54_第2页
第2章-云计算与大数据的相关技术54_第3页
第2章-云计算与大数据的相关技术54_第4页
第2章-云计算与大数据的相关技术54_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、云计算与大数据技术 人民邮电出版社王鹏 黄焱 安俊秀 张逸琴 编著 目录录CONTENTS第1章云云计计算与大大数据基基础第2章云云计计算与大大数据的的相关技技术第3章虚虚拟拟化技术术第4章集集群群系统基基础第5章MPI面面向计算算第6章Hadoop分分布式大大数据系系统第7章HPCC面向数数据的高高性能计计算集群群系统第8章Storm基于于拓扑的的流数据据实时计计算系统统第9章服服务务器与数数据中心心第10章章云云计算大大数据仿仿真技术术第2章云计计算与大大数据的的相关技技术云计算算与大数数据技术术第2章云云计算算与大数数据的相相关技术术2.1云云计算算与大数数据2.2云云计算算与物联联网2

2、.3一一致性性哈希算算法2.3.1一一致性哈哈希算法法的基本本原理2.3.2一一致性性哈希算算法中计计算和存存储位置置的一致致性2.4非非关系系型数据据库2.4.1从从关系型型数据库库到非关关系型数数据库2.4.2非非关系型型数据库库的定义义2.4.3非非关系型型数据库库的分类类2.5集集群高高速通信信标准InfiniBand2.6云云计算算大数据据集群的的自组织织特性2.1云云计算算与大数数据2.1云云计算算与大数数据云计算与与大数据据相比云云计算更更像是对对一种新新的技术术模式的的描述而而不是对对某一项项技术的的描述,而大数数据则较较为确切切地与一一些具体体的技术术相关联联。目前新出出现的

3、一一些技术术如Hadoop、HPCC、Storm都较为为确切地地与大数数据相关关,同时时并行计计算技术术、分布布式存储储技术、数据挖挖掘技术术这些传传统的计计算机学学科在大大数据条条件下又又再次萌萌发出生生机,并并在大数数据时代代找到了了新的研研究内容容。大数据其其实是对对面向数数据计算算技术中中对数据据量的一一个形象象描述,通常也也可以被被称为海海量数据据。云计算整整合的资资源主要要是计算算和存储储资源,云计算算技术的的发展也也清晰地地呈现出出两大主主题计计算和数数据。伴伴随这两两大主题题,出现现了云计计算和大大数据这这两个热热门概念念,任何何概念的的出现都都不是偶偶然的,取决于于当时的的技

4、术发发展状况况。李国杰院院士认为为:“信信息系统统需要从从数据围围绕着处处理器转转改为处处理能力力围绕着着数据转转,将计计算用于于数据,而不是是将数据据用于计计算”。2.1云云计算算与大数数据海量的数数据本身身很难直直接使用用,只有有通过处处理的数数据才能能真正地地成为有有用的数数据,因因此云计计算时代代计算和和数据两两大主题题可以进进一步明明确为数据和针对数据据的计算算,计算可可以使海海量的数数据成为为有用的的信息,进而处处理成为为知识。目前提到到云计算算时,有有时将云云存储作作为单独独的一项项技术来来对待,只是把把网络化化的存储储笼统地地称为云云存储,事实上上在面向向数据的的时代不不管是出

5、出现了云云计算的的概念还还是大数数据的概概念,存存储都不不是一个个独立存存在的系系统。特特别是在在集群条条件下,计算和和存储都都是分布式的,如何让计计算“找找”到自自己需要要处理的的数据是云计算算系统需需要具有有的核心功能能。2.1云云计算算与大数数据面向数据据要求计算算是面向向数据的的,那么么数据的的存储方方式将会会深刻地地影响计计算实现现的方式式。在分布式式系统中中实现计算和数数据有效效融合从而提高数据据处理能能力,简化分布布式程序序设计难难度,降低系统统网络通通信压力力从而使系统能能有效地地面对大大数据处处理的机制称称为计算和数数据的协协作机制制。在这种协协作机制制中计算如何何找到数数据

6、并启启动分布布式处理理任务的问题是是需要重重点研究究的课题题,这一一问题被被称为计算和数数据的位位置一致致性问题。2.1云云计算算与大数数据面向数据据也可以以更准确确地称为为“面向数据据的计算算”,面向向数据要要求系统统的设计计和架构构是围绕数据据为核心心展开的,面向数数据也是是云计算算系统的的一个基基本特征征,而计算与数数据的有有效协作作是面向数数据的核心要求求。回顾计算算机技术术的发展展历程,可以清清晰地看看到计算算机技术术从面向向计算逐逐步转变变到面向向数据的的过程。从面向向计算到到面向数数据是技技术发展展的必然然趋势,并不能能把云计计算的出出现归功功于任何何的个人人和企业业。这一一过程

7、的的描述如如图2.1所示示,该图图从硬件件、网络络和云计计算的演演进过程程等方面面以时间间为顺序序进行了了纵向和和横向的的对比。2.1云云计算算与大数数据在计算机机技术的的早期由由于硬件件设备体体积庞大大,价格格昂贵,这一阶阶段数据据的产生生还是“个别”人的工工作。这这个时期期的数据据生产者者主要是是科学家家或军事事部门,他们更更关注计计算机的的计算能能力,计计算能力力的高低低决定了了研究能能力和一一个国家家军事能能力的高高低。图2.1计算算机技术术向云计计算的演演进1969年ARPANET的的出现改改变了整整个计算算机技术术的发展展历史,网络逐逐步成为为推动技技术发展展的一个个重要力力量,1

8、989年TimBerners-Lee发明明的万维维网改变变了信息息的交流流方式,特别是是高速移移动通信信网络技技术的发发展和成成熟使现现在数据据的生产产成为全全球人的的共同活活动,人人们生产产数据不不再是在在固定时时间和固固定地点点进行,而是随随时随地地都在产产生数据据。微博博、博客客、社交交网、视视频共享享网站、即时通通信等媒媒介随时时都在生生产着数数据并被被融入全全球网络络中。相对而言言由于这这时数据据量很小小,数据据在整个个计算系系统中的的重要性性并不突突出。这这时网络络还没有有出现,推动计计算技术术发展的的主要动动力是硬硬件的发发展,这这个时期期是硬件件的高速速变革时时期,硬硬件从电电

9、子管迅迅速发展展到大规规模集成成电路。从云计算算之父John McCarthy提出云云计算的的概念到到大数据据之父Gray等人提提出科学学研究的的第四范范式,时时间已经经跨越了了半个世世纪。以以硬件为为核心的的时代也也是面向向计算的的时代,那时数数据的构构成非常常简单,数据之之间基本本没有关关联性,物理学学家只处处理物理理实验数数据,生生物学家家只处理理生物学学数据,计算和和数据之之间的对对应关系系是非常常简单和和直接,这个时时期研究究计算和和存储的的协作机机制并没没有太大大的实用用价值。到了以网网络为核核心的时时代数据据的构成成变得非非常复杂杂,数据据来源多多样化,不同数数据之间间存在大大量

10、的隐隐含关联联性,这这时计算算所面对对的数据据变得非非常复杂杂,如社社会感知知、微关关系等应应用将数数据和复复杂的人人类社会会运行相相关联,由于人人人都是是数据的的生产者者,人们们之间的的社会关关系和结结构就被被隐含到到了所产产生的数数据之中中。数据的产产生目前前呈现出出了:大大众化、自动化化、连续续化、复复杂化的的趋势。云计算算、大数数据概念念正是在在这样的的一个背背景下出出现的。这一时时期的典典型特征征就是计计算必须须面向数数据,数数据是架架构整个个系统的的核心要要素,这这就使计计算和存存储的协协作机制制研究成成为需要要重点关关注的核核心技术术,计算算能有效效找到自自己需要要处理的的数据,

11、可以使使系统能能更高效效地完成成海量数数据的处处理和分分析。云计算和和大数据据这两个个名词也也可看作作是描述述了面向向计算时时代信息息技术的的两个方方面,云云计算侧侧重于描描述资源源和应用用的网络络化交付付方法,大数据据侧重于于描述面面向数据据时代由由于数据据量巨大大所带来来的技术术挑战。信息技术术领域提提出的面面向数据据的概念念同时也也开始深深刻地改改变了科科学研究究的模式式,2007年年著名的的数据库库专家Gray提出了了科学研研究的第第四范式式。他认认为利用用海量的的数据可可以为科科学研究究和知识识发现提提供除经经验、理理论、计计算外的的第四种种重要方方法。科科学研究究的四个个范式的的发

12、展历历程也同同样反映映了从面面向计算算走向面面向数据据的过程程。 2.1云云计算算与大数数据如图2.2所示示,人类类早期知知识的发发现主要要依赖于于经验、观观察和实实验,需要的的计算和和产生的的数据都都是很少少的。人人类在这这一时期期对于宇宇宙的认认识都是是这样形形成的,就像伽伽利略为为了证明明自由落落体定理理,是通通过在比比萨斜塔塔扔下两两个大小小不一的的小球一一样,人人类在那那个时代代知识的的获取方方式是原原始而朴朴素的。图2.2科学研究究四个范范式的发发展历程程当人类知知识积累累到一定定的程度度后,知知识逐渐渐形成了了理论体体系,如如牛顿力力学体系系、Maxwell的的电磁场场理论,人类

13、可可以利用用这些理理论体系系去预测测自然并并获取新新的知识识,这时时对计算算和数据据的需求求已经在在萌生,人类已已可以依依赖这些些理论发发现新的的行星,如海王王星、冥冥王星的的发现不不是通过过观测而而是通过过计算得得到。计算机的的出现为为人类发发现新的的知识提提供了重重要的工工具。这这个时代代正好对对应于面面向计算算的时代代,可以以在某些些具有完完善理论论体系领领域利用用计算机机仿真计计算来进进行研究究。这时时计算机机的作用用主要是是计算,例如人人类利用用仿真计计算可以以实现模模拟核爆爆这样的的复杂计计算。现在人类类在一年年内所产产生的数数据可能能已经超超过人类类过去几几千年产产生的数数据的总

14、总和,即即使是复复杂度为为的数据据处理方方法在面面对庞大大的时都都显得力力不从心心,人类类逐步进进入面向向数据的的时代。第四范范式说明明可以利利用海量量数据加加上高速速计算发发现新的的知识,计算和和数据的的关系在在面向数数据时代代变得十十分紧密密,也使使计算和和数据的的协作问问题面临临巨大的的技术挑挑战。2.1云云计算算与大数数据2.2云云计算算与物联联网2.2云云计算算与物联联网云计算和和物联网网在出现现的时间间上非常常接近,以至于于有一段段时间云云计算和和物联网网两个名名词总是是同时出出现在各各类媒体体上。物联网的的出现部部分得益益于网络络的发展展,大量量传感器器数据的的收集需需要良好好的

15、网络络环境,特别是是部分图图像数据据的传输输更是对对网络的的性能有有较高的的要求。在物联网网技术中中传感器器的大量量使用使使数据的的生产实实现自动动化,数数据生产产的自动动化也是是推动当当前大数数据技术术发展的的动力之之一。物联网的的英文名名称为“TheInternetofThings”,简称称:IOT。物联网网就是“物物相相连的互互联网”。这有两层层意思:第一,物物联网的的核心和和基础仍仍然是互互联网,是在互互联网基基础之上上的延伸伸和扩展展的一种种网络;第二,其其用户端端延伸和和扩展到到了任何何物品与与物品之之间,进进行信息息交换和和通信。2.2云云计算算与物联联网因此,物联网的定义是是通

16、过射频识别别(RFID)装置、红外感感应器、全球定定位系统统、激光光扫描器器等信息传感感设备,按约定定的协议议,把任任何物品品与互联联网相连连接,进进行信息交换换和通信,以实现现智能化识识别、定位、跟踪、监控和管理的一种网络。明确的物物联网概概念最早早是由美美国麻省省理工大大学Auto-ID实验室在1999年提提出的,最初是是为了提提高基于于互联网网流通领领域信息息化水平平而设计计的。物联网这这个概念念可以认认为对一一类应用用的称呼呼,物联联网与云云计算技技术的关关系从定定义上讲讲是应用用与平台台的关系系。2.2云云计算算与物联联网物联网系系统需要要大量的的存储资资源来保保存数据据,同时时也需

17、要要计算资资源来处处理和分分析数据据,当前前我们所所指的物联网传传感器连连接呈现现出以下下的特点点:连接传感感器种类类多样;连接的传传感器数数量众多多;连接的传传感器地地域广大大。这些特点点都会导导致物联联网系统统会在运运行过程程中产生生大量的的数据,物联网网的出现现使数据据的产生生实现自自动化,大量的的传感器器数据不不断地在在各个监监控点产产生,特特别是现现在信息息采样的的空间密密度和时时间密度度不断增增加,视视频信息息的大量量使用,这些因因素也是是目前导导致大数数据概念念出现的的原因之之一。2.2云云计算算与物联联网物联网的的产业链可以细分分为标识、感知、处理和信息传送送4个环节节,每个个

18、环节的的关键技术术分别为RFID、传感器、智能芯片片和电信运运营商的的无线传输输网络。云计算的的出现使使物联网网在互联联网基础础之上延延伸和发发展成为为可能。物联网中中的物,在云计计算模式式中,它它相当于于是带上上传感器器的云终终端,与与上网本本、手机机等终端端功能相相同。这也是物物联网在在云计算算日渐成成熟的今今天,才才能重新新被激活活的原因因之一。2.2云云计算算与物联联网新的平台台必定造造就新的的物联网网,把云云计算的的特点与与物联网网的实际际相结合合,云计算技技术将给给物联网网带来以以下深刻刻变革:(1)解决服务务器节点点的不可可靠性问问题,最最大限度度降低服服务器的的出错率率。近年来

19、,随着物物联网从从局域网网走向城城域网,其感知知信息也也呈指数数型增长长,同时时导致服服务器端端的服务务器数目目呈线性性增长。服务器数数目多了了,节点点出错的的概率肯肯定也随随之变大大,更何何况服务务器并不不便宜。节点不可可信问题题使得一一般的中中小型公公司要想想独自撑撑起一片片属于自自己的天天空,那那是难上上加难。而在云计计算模式式中,因因为“云云”有成成千上万万、甚至至上百万万台服务务器,即即使同时时宕掉几几台,“云”中中的服务务器也可可以在很很短的时时间内,利用冗冗余备份份、热拔拔插、RAID等技术术快速恢恢复服务务。例如,Google公公司不再再是一味味追求单单个服务务器的性性能参数数

20、,而是是更多地地关注如如何用堆堆积如山山的集群群来弥补补单个服服务器的的性能不不足。在对单个个服务器器性能要要求的降降低的同同时也减减少了相相应的资资金需求求。至于于对于宕宕机的服服务器,Google采用的的是直接接换掉。云计算集集群的加加入,能能够保证证物联网网真正实实现无间间断的安安全服务务。2.2云云计算算与物联联网(2)低成本本的投入入可以换换来高收收益,让让限制访访问服务务器次数数的瓶颈颈成为历历史。服务器相相关硬件件资源的的承受能能力都是是有一定定范围的的,当服服务器同同时响应应的数量量超过自自身的限限制时,服务器器就会崩崩溃。而而随着物物联网领领域的逐逐步扩大大,物的的数量呈呈几

21、何级级增长,而物的的信息也也呈爆炸炸性增长长,随之之而来的的访问量量空前高高涨。因此,为为了让服服务器能能安全可可靠地运运行,只只有不断断增加服服务器的的数量和和购买更更高级的的服务器器,或者者限制同同时访问问服务器器的数量量。然而而这两种种方法都都存在致致命的缺缺点:服服务器的的增加,虽能通通过大量量的经费费投入解解决一时时的访问问压力,但设备备的浪费费却是巨巨大的。而采用用云计算算技术,可以动动态地增增加或减减少云模模式中服服务器的的数量和和提高质质量,这这样做不不仅可以以解决访访问的压压力,还还经济实实惠。2.2云云计算算与物联联网(3)让物联联网从局局域网走走向城域域网甚至至是广域域网

22、,在在更广的的范围内内进行信信息资源源共享。局域网中中的物联联网就像像是一个个超市,物联网网中的物物就是超超市中的的商品,商品离离开这个个超市到到另外的的超市,尽管它它还存在在,但服服务器端端内该物物体的信信息会随随着它的的离开而而消失。其信息息共享的的局限性性不言而而喻。但通过云云计算技技术,物物联网的的信息直直接存放放在Internet的“云云”上,而每个个“云”有几百百万台服服务器分分布在全全国甚至至是全球球的各个个角落,无论这这个物走走到哪儿儿,只要要具备传传感器芯芯片,“云”中中最近的的服务器器就能收收到它的的信息,并对其其信息进进行定位位、分析析、存储储、更新新。用户户的地理理位置

23、也也不再受受限制,只要通通过Internet就能共共享物体体的最新新信息。2.2云云计算算与物联联网(4)将云计计算与数数据挖掘掘技术相相结合,增强物物联网的的数据处处理能力力,快速速做出商商业抉择择。伴随着物物联网应应用的不不断扩大大,业务务应用范范围从单单一领域域发展到到所有的的各行各各业,信信息处理理方式从从分散到到集中,产生了了大量的的业务数数据。运用云计计算技术术,由云云模式下下的几百百万台的的计算机机集群提提供强大大的计算算能力,并通过过庞大的的计算机机处理程程序自动动将任务务分解成成若干个个较小的的子任务务,快速速地对海海量业务务数据进进行分析析、处理理、存储储、挖掘掘,在短短时

24、间内内提取出出有价值值的信息息,为物物联网的的商业决决策服务务。这也是将将云计算算技术与与数据挖挖掘技术术相结合合给物联联网带来来的一大大竞争优优势。2.2云云计算算与物联联网任何技术术从萌芽芽到成型型,再到到成熟,都需要要经历一一个过程程。云计算技技术作为一项项有着广广泛应用用前景的的新兴前前沿技术术,尚处处于成型型阶段,自然也也面临着一一些问题题。首先是标标准化问问题。虽然云平平台解决决的问题题一样,架构一一样,但但基于不不同的技技术、应应用,其其细节很很可能完完全不同同,从而而导致平平台与平平台之间间可能无无法互通通。目前在Google、EMC、Amazon等云云平台上上都存在在许多云云

25、技术打打造的应应用程序序,却无无法跨平平台运行行。这样样一来,物联网网的网与与网之间间的局限限性依旧旧存在。其次是安安全问题题。物联网从从专用网网到互联联网,虽虽然信息息分析、处理得得到了质质的提升升,但同同时网络络安全性性也遇到到了前所所未有的的挑战。Internet上上的各种种病毒、木马以以及恶意意入侵程程序让架架于云计计算平台台上的物物联网处处于非常常尴尬的的境地。2.2云云计算算与物联联网云计算作作为互联联网全球球统一化化的必然然趋势,其统一一虚拟的的基础设设施平台台,方便便透明的的上层调调用接口口,计算算信息的的资源共共享等特特点,完完全是在在充分考考虑了各各行各业业的整合合需求下下

26、才形成成的拯救救互联网网的诺亚亚方舟。尽管,目目前云计计算的应应用还处处在探索索测试阶阶段,但随着物物联网界界对云计计算技术术的关注注以及云云计算技技术的日日趋成熟熟,云计计算技术术在物联联网中的的广泛应应用指日日可待。2.2云云计算算与物联联网2.3一一致性性哈希算算法2.3一一致性性哈希算算法2.3.1一一致性哈哈希算法法的基本本原理主从结构构的云计算算系统负载的均均衡往往通过过主节点来完成,而而一些对等结构构的云计算算系统可可以采用用一致性哈哈希算法法来实现负负载的均均衡,这这种模式式避免了主从结结构云计计算系统统对主节点点失效的的敏感。哈希算法法是一种从从稀疏值值范围到到紧密值值范围的

27、的映射方方法,在在存储和和计算定定位时可可以被看看作是一一种路由算法法,通过这这种路由由算法文文件块能能被惟一地定定位到一一个节点点的位置置。2.3.1一一致性哈哈希算法法的基本本原理传统的哈哈希算法法的容错性和扩展性都不好,无法有有效地适适应面向向数据系系统节点点的动态变化化。1997年David Karger提出出了一致致性哈希希算法来来定位数数据,实实现了云云计算系系统在节节点变化化时的单调性,实现了了较小的数据迁移移代价。Amazon的的云存储储系统Dynamo改改进了基基本的一一致性哈哈希算法法,引入入了虚拟节点点,使系统统具有更更加均衡衡地存储储定位能能力。Facebook开发发的

28、Cassandra系统统也是采采用了一一致性哈哈希算法法的存储储管理算算法。2.3.1一一致性哈哈希算法法的基本本原理一致性哈哈希算法法及其改改进算法法已成为分布式存存储领域域的一个标准技术术。使用一一致性哈哈希算法法的系统统无需中中心节点点来维护护元数据据,解决决了元数数据服务务器的单单点失效效和性能能瓶颈问问题,但但对于系系统的负负载均衡衡和调度度节点的的有效性性提出了了更高的的要求。传统的哈哈希算法法在节点数没没有变化化时能很好地地实现数数据的分分配,但当节点数数发生变变化时传统的的哈希算算法将对数据据进行重重新的分分配,这样系统恢复复的代价就非常大。例如系系统中节节点数为为N,传统的的

29、哈希算算法的计计算方法法为:HASH(Key)%N,当N发生变化化时整个个哈希的的分配次次序将完完全重新新生成。云计算算系统通通常涉及及大量的的节点,节点的的失效和和加入都都是非常常常见的的,传统统的哈希希算法无法满足足这种节节点数目目频繁变变化的要要求。一致性哈哈希的设设计目标标就是解解决节点点频繁变变化时的的任务分分配问题题,一致致性哈希希将整个个哈希值值空间组组织成一一个虚拟拟圆环(如图2.3所所示),图2.3一致性哈哈希原理理假设某哈哈希函数数H的值值空间为为0(232-1),即32位无符符号整数数,将各各节点用用H函数数哈希,可以将将服务器器的IP或主机机名作为为关键字字哈希,这样每

30、每个节点点就能确确定其在在哈希环环上的位位置,将将Key用H函函数映射射到哈希希空间的的一个值值,沿该该值向后后,将遇遇到的第第一个节节点作为为处理节节点;若若某个Key的的HASH值落落在node1和node2各自HASH值的中中间位置置,则此此Key对应的的业务请请求由node2处理理。当增加服服务节点点时,只只会影响响与之相相邻的某某一节点点,其他他节点不不受影响响。如果果在node2和node4之间增增加一个个node5,则只有有node4处处理的部部分Key(HASH值落在在node2之之后、node5之前前的那部部分Key)变变为由node5来处处理,其其他节点点处理的的Key不变

31、。如果节点点数不多多,则将将这些节节点映射射到值空空间之后后,分布布可能会会很不均均匀,必必然会造造成个别别节点处处理的Key数数量远大大于其他他节点,这就起起不到负负载均衡衡的效果果。这可以通通过引入入虚拟节节点的方方式解决决,即对对每一个个节点计计算多个个HASH值,尽量保保证这些些HASH值比比较均匀匀地分布布在值空空间中。当根据据Key查找节节点时,找到的的是虚拟拟节点,然后再再根据虚虚拟节点点查找对对应的真真实节点点。2.3.1一一致性哈哈希算法法的基本本原理简单地来来说,一一致性哈哈希算法法的基本本实现过过程为:对Key值首先用用MD5算法将将其变换换为一个个长度32位的的十六进进

32、制数值值,再用用这个数数值对232取模,将将其映射射到由232个值构成成的环状状哈希空空间,对对节点也也以相同同的方法法映射到到环状哈哈希空间间,最后后Key值会在环环状哈希希空间中中找到大大于它的的最小的的节点值值作为路路由值。一致性哈哈希算法法的采用用使集群群系统在在进行任任务划分分时不再再依赖某某些管理理节点来来维护,并且在在节点数数据发生生变化时时能够以以最小的的代价实实现任务务的再分分配,这这一优点点特别符符合云计计算系统统资源池池弹性化化的要求求,因此此一致性性哈希算算法成为为了实现现无主节点点对等结结构集群群的一种标标准算法法。2.3.2一一致性哈哈希算法法中计算算和存储储位置的

33、的一致性性2.3.2一一致性性哈希算算法中计计算和存存储位置置的一致致性基于一致致性哈希希的原理理可以给给出计算算和存储储的一致致性哈希希方法,从而使使计算能能在数据据存储节节点发起起。对于多用用户分布布式存储储系统来来说:“用户名名+逻辑辑存储位位置”所所构成的的字符串串在系统统中是惟惟一确定定的,如如属于用用户wang,逻辑存存储位置置为/test/test1.txt的文文件所构构成的字字符串“wang/test/test1.txt”在在系统中中一定是是惟一的的,同时时某一个个计算任任务需要要对test1.txt这个个文件进进行操作作和处理理,则它它一定会会在程序序中指定定用户名名和逻辑辑

34、位置,因此存存储和计计算test1.txt都利利用相同同的一致致性哈希希算法就就能保证证计算被被分配的的节点和和当时存存储test1.txt文件件时被分分配的节节点是同同一个节节点。现在以下下面这个个应用场场景为例例,说明明一致性性哈希算算法实现现计算和和存储位位置一致致性的方方法:(1)面面向相对对“小”数据进进行处理理,典型型的文件件大小为为100MB之之内,通通常不涉涉及对文文件的分分块问题题,这一一点与MapReduce框框架不同同;(2)待待处理数数据之间间没有强强的关联联性,数数据块之之间的处处理是独独立的,数据处处理是不不需要进进行数据据块之间间的消息息通信,保证节节点间发发起的

35、计计算是低低耦合的的计算任任务;(3)程程序片的的典型大大小远小小于需要要处理的的数据大大小,计计算程序序片本质质上也可可以看作作是一种种特殊的的数据,这一假假设在大大多数情情况下是是成立的的;(4)数数据的存存储先于于计算发发生。2.3.2一一致性哈哈希算法法中计算算和存储储位置的的一致性性根据一致致性哈希希算法的的基本原原理在面面向数据据的分布布式系统统中计算算和存储储位置一一致性方方法如图图2.4所示,其主要要步骤如如下: 将服服务器节节点以IP地址址作为Key值值,以一一致性哈哈希方法法映射到到哈希环环上; 在数数据存储储时以(用户名名+文件件逻辑位位置)作作为惟一一的Key值,映射到

36、到哈希环环上,并并顺时针针找到离离自己哈哈希值最最近的节节点作为为实际数数据存储储的位置置; 在发发起计算算任务时时提取计计算任务务所要操操作的数数据对应应的(用用户名+文件逻逻辑位置置)值作作为Key值,映射到到哈希环环上,并并顺时针针找到离离自己哈哈希值最最近的节节点注入入程序并并发起计计算的节节点。由由于相同同用户的的相同数数据(用户名名+文件件逻辑位位置)其其在一一致性哈哈希算法法作用下下一定会会被分配配到相同同的节点点,从而而保证了了计算所所发起的的节点刚刚好就是是计算所所需要处处理的数数据所在在的节点点。在这种算算法的支支持下只只要计算算程序片片需要处处理的数数据逻辑辑位置是是确定

37、的的,系统统就会将将计算程程序片路路由到数数据存储储位置所所在的节节点,这这时节点点间的负负载均衡衡性是由由数据分分布的均均衡化来来实现的的。图2.4一致性哈哈希算法法实现计计算与数数据的位位置一致致性2.3.2一一致性哈哈希算法法中计算算和存储储位置的的一致性性一致性哈哈希算法法可以实实现无中中心节点点的计算算和数据据定位,使计算算可以惟惟一地找找到其所所要处理理和分析析的数据据,使计计算能最最大可能能地在数数据存储储的位置置发起,从而节节约大量量的网络络资源,同时避避免了系系统单点点失效造造成的不不良影响响。利用一致致性哈希希方法在在面对海海量文件件时系统统不用维维护一个个庞大的的元数据据

38、库用于于保存文文件的存存储信息息,计算算寻找数数据的速速度非常常直接,路由的的算法复复杂度非非常低。需要存储储大量Key-Value的的Amazon的电子子商务应应用和Facebook的社社交网站站应用都都采用了了一致性性哈希算算法。图2.4一致致性哈希希算法实实现计算算与数据据的位置置一致性性一致性哈哈希算法法可以实实现无中中心节点点的计算算和数据据定位,使计算算可以惟惟一地找找到其所所要处理理和分析析的数据据,使计计算能最最大可能能地在数数据存储储的位置置发起,从而节节约大量量的网络络资源,同时避避免了系系统单点点失效造造成的不不良影响响。利用用一致性性哈希方方法在面面对海量量文件时时系统

39、不不用维护护一个庞庞大的元元数据库库用于保保存文件件的存储储信息,计算寻寻找数据据的速度度非常直直接,路路由的算算法复杂杂度非常常低。需需要存储储大量Key-Value的的Amazon的电子子商务应应用和Facebook的社社交网站站应用都都采用了了一致性性哈希算算法。2.4非非关系系型数据据库2.4.1从从关系型型数据库库到非关关系型数数据库关系型数数据库(Relational Database)技术是是1970年埃埃德加科德(EdgarFrankCodd)所所提出的的,关系系型数据据库克服服了网络络数据库库模型和和层次数数据库模模型的一一些弱点点。1981年年埃德加加科德德因在关关系型数数

40、据库方方面的贡贡献获得得了图灵灵奖,因因此埃德德加科科德也被被称为“关系数数据库之之父”(见图2.5)。关系系型数据据库几十十年来一一直是统统治数据据库技术术的核心心标准,目前主主要的数数据库系系统仍然然采用的的是关系系型数据据库。埃埃德加科德发发明的关关系数据据库不仅仅有一个个坚实的的数学基基础,即即关系代代数,而而且埃德德加科科德从关关系代数数的基础础推演出出一套关关系数据据库的理理论。这这个理论论包括一一系列“范式”,可以以用来检检查数据据库是否否有冗余余性和不不一致等等性质。另外,埃德加加科德德也在关关系代数数基础之之上定义义了一系系列通用用的数据据基本操操作。但但云计算算和大数数据技

41、术术的出现现逐步动动摇了关关系型数数据库的的统治地地位。图2.5关系系数据库库之父 Edgar Frank Codd随着信息息产业的的发展,特别是是在云计计算和互互联网Web2.0蓬勃发发展的今今天,数数据库系系统成为为了IT架构中中信息存存储和处处理的必必要组成成部分,Web 2.0是是相对Web1.0 的新新的一类类互联网网应用的的统称。Web 1.0的的主要特特点在于于用户通通过浏览览器获取取信息。Web 2.0则则更注重重用户的的交互作作用,用用户既是是网站内内容的浏浏览者,也是网网站内容容的制造造者。所所谓网站站内容的的制造者者是说互互联网上上的每一一个用户户不再仅仅仅是互互联网的的

42、读者,同时也也成为互互联网的的作者;不再仅仅仅是在在互联网网上冲浪浪,同时时也成为为波浪制制造者;在模式式上由单单纯的“读”向向“写”以及“共同建建设”发发展;由由被动地地接收互互联网信信息向主主动创造造互联网网信息发发展,从从而更加加人性化化。云计计算资源源网络化化的提供供方式更更是为Web2.0发展提提供了无无限的想想象空间间,从这这一点看看我们已已很难将将这两者者完全区区分开来来。云计计算技术术对数据据库高并并发读/写的需需求,对对海量数数据的高高效率存存储和访访问的需需求,对对数据库库的高可可扩展性性和高可可用性的的需求都都让传统统关系型型数据库库系统显显得力不不从心。同时关关系型数数

43、据库技技术中的的一些核核心技术术要求如如:数据据库事务务一致性性需求,数据库库的写实实时性和和读实时时性需求求,对复复杂的SQL查查询,特特别是多多表关联联查询的的需求等等在Web2.0技技术中却却并不是是必要的的,而且且系统为为此付出出了较大大的代价价。关系型数数据库技技术的出出现是云云计算、大数据据技术的的必然需需求,非非关系型型数据库库可以被被称为一一项数据据库的革革命,从从2009年开开始,在在云计算算的发展展和开源源社区的的推动下下,非关关系型数数据库的的发展显显示了较较强的活活力,也也得到了了越来越越多的用用户关注注和认可可。目前前已经有有多家大大型IT企业已已经采用用非关系系型数

44、据据库作为为重要的的生产系系统基础础支撑,比如Google的的BigTable,Amazon的Dynamo,以以及Digg、Twitter、Facebook在使使用的Cassandra等等。2.4.2非非关系型型数据库库的定义义非关系型型数据库库,又被被称为NoSQL(NotOnlySQL),意为为不仅仅仅是SQL(Structured Query Language,结构构化查询询语言),据维维基百科科介绍,NoSQL最最早出现现于1998年年,是由由CarloStrozzi最早早开发的的一个轻轻量、开开源、不不兼容SQL功功能的关关系型数数据库。2009年,在一次次关于分分布式开开源数据据库

45、的讨讨论会上上,再次次提出了了NoSQL的的概念,此时NoSQL主要要是指非非关系型型、分布布式、不不提供ACID(数据据库事务务处理的的四个基基本要素素)的数数据库设设计模式式。同年年,在亚亚特兰大大举行的的“NO:SQL(east)”讨讨论会上上,对NoSQL最普普遍的定定义是“非关联联型的”,强调调Key-Value存储和和文档数数据库的的优点,而不是是单纯地地反对RDBMS,至至此,NoSQL开始始正式出出现在世世人面前前。2.4.3非非关系型型数据库库的分类类NoSQL描述述的是大大量结构构化数据据存储方方法的集集合,根根据结构构化方法法以及应应用场合合的不同同,主要要可以将将NoS

46、QL分分为以下下几类:(1)Column-Oriented。面向检索索的列式式存储,其存储储结构为为列式结结构,不不同于关关系型数数据库的的行式结结构,这这种结构构会让很很多统计计聚合操操作更简简单方便便,使系系统具有有较高的的可扩展展性。这这类数据据库还可可以适应应海量数数据的增增加以及及数据结结构的变变化,这这个特点点与云计计算所需需的相关关需求是是相符合合的。比比如GoogleAppengine的的Big Table以及相相同设计计理念的的Hadoop子系统统HaBase就是这这类的典典型代表表。需要要特别指指出的是是,BigTable特别适适用于MapReduce处处理,这这对于云云计

47、算的的发展有有很高的的适应性性。(2)Key-Value。面向高性性能并发发读/写写的缓存存存储,其结构构类似于于数据结结构中的的Hash表,每个Key分分别对应应一个Value,能能够提供供非常快快的查询询速度、大数据据存放量量和高并并发操作作,非常常适合通通过主键键对数据据进行查查询和修修改等操操作。Key-Value数数据库的的主要特特点是具具有极高高的并发发读/写写性能,非常适适应作为为缓存系系统使用用。MemcacheDB、BerkeleyDB、Redis、Flare就就是Key-Value数据据库的代代表。(3)Document-Oriented。面向海量量数据访访问的文文档存储储

48、,这类类存储的的结构与与Key-Value非常相相似,也也是每个个Key分别对对应一个个Value,但是这这个Value主要以以JSON(JavaScript ObjectNotations)或者XML等等格式的的文档来来进行存存储。这这种存储储方式可可以很方方便地被被面向对对象的语语言所使使用。这这类数据据库可以以在海量量的数据据中快速速查询数数据,典典型代表表为MongoDB、CouchDB等。NoSQL具有有扩展简简单、高高并发、高稳定定性、成成本低廉廉等优势势,也存存在一些些问题。比如,NoSQL暂暂不提供供对SQL的支支持,会会造成开开发人员员的额外外学习成成本;NoSQL大多多为开

49、源源软件,其成熟熟度与商商用的关关系型数数据库系系统相比比有差距距;NoSql的架构构特性决决定了其其很难保保证数据据的完整整性,适适合在一一些特殊殊的应用用场景使使用。2.5集集群高高速通信信标准InfiniBand集群结构构是云计计算系统统的基本本结构之之一,在在集群结结构中节节点之间间的协调调和数据据传送一一般都通通过消息息传递机机制进行行,在传传统的高高性能计计算系统统集群内内部的网网络通信信能力成成为了影影响集群群计算能能力的一一个重要要因素,由于受受到网络络通信速速度的制制约甚至至提出以以计算换换通信的的编程理理念。云云计算系系统中集集群的规规模变得得空前巨巨大,为为了很好好地实现

50、现集群内内部的调调度和协协调高速速的网络络通信是是必不可可少的。InfiniBand就是是目前较较为常见见的一种种高速集集群通信信协议,它在高高性能计计算领域域已得到到广泛的的应用。InfiniBand是一种种全新、功能强强大、设设计用来来支持Internet基础础设施I/O互互联的体体系结构构。InfiniBand被被工业界界的顶级级公司所所支持,执行委委员会成成员包括括:Compaq、Dell、HewlettPackard、IBM、Intel、Microsoft和Sun。InfiniBand行业协协会成员员总计超超过220个。InfiniBand被主主要的OEM服服务器生生产商所所支持,用

51、来作作为下一一代服务务器的I/O互互联标准准,是第第一个高高性能的的机箱内内部I/O互联联方式得得到延伸伸的工业业标准。InfiniBand是惟惟一既提提供机箱箱内底板板互联解解决方案案,又可可以使高高速带宽宽延伸出出机箱外外部的互互联标准准,是一一种把I/O和和系统域域网络统统一起来来的标准准。与其其他商品品化系统统域网络络不同,InfiniBand网络络首先由由行业协协会制定定标准,然后生生产商根根据标准准制造出出InfiniBand设备备,不同同生产商商的产品品要求具具有互操操作性,这样可可以使InfiniBand产品具具有更好好的性能能价格比比。InfiniBand 是在在1999年年

52、由FutureIO和和NGIO两两个标准准整合而而来的新新型互联联技术。它将复复杂的I/O系系统与与CPU、内存存分开,使I/O子子系统独独立,采采用基于于包交换换的高速速串行链链路和可可扩展的的高速交交换网络络替代共共享总线线结构,提供了了高带宽宽、低延延迟、可可扩展的的I/O 互联联。基于于I/O 通路路共享机机制的InfiniBand 提供供了一种种连接计计算机的的新途径径,采用用InfiniBand之之后,I/O不不再是是服务器器的组成成部分,这时远远程存储储设备、I/O 设备备和服务务器之间间的互联联是通过过InfiniBand交交换机和和路由器器完成的的,克服服了传统统的共享享I/

53、O 总线线结构的的种种弊弊端。InfiniBand具有传传输速率率高、传传输距离离长、接接口功耗耗低以及及噪声容容限高等等特性,单线传传输速率率为2.5Gbps,可通过过2、4 或12线线并行来来扩展通通道带宽宽,峰值值带宽高高达2.5、10、30Gbps(1x、4x、12x 线)。InfinBand既既可作作为系统统内部互互联技术术又可作作为网络络互联技技术,既既可用于于构造高高性能刀刀片服务务器(BladeServer),又可可用于构构建具有有高可用用性和高高可伸缩缩性的大大规模集集群系统统,还可可用于构构建性能能卓越的的存储区区域网络络SAN。2.6云云计算算大数据据集群的的自组织织特性

54、自组织理理论产生生于20世纪七七八十年年代,主主要研究究混沌系系统在随随机识别别时系统统内部自自发地由由无序变变为有序序、形成成耗散结结构的过过程,被被物理、化学、生物学学、社会会学、心心理学等等领域广广泛研究究,其中中一些研研究者将将自组织织理论的的思想、模型与与计算机机科学、控制理理论等学学科相结结合,形形成了一一些新兴兴的研究究方向。自组织织算法按按照自下下而上的的机制进进行控制制,与一一般采用用中心控控制算法法不同,在进化化计算、任务分分配、网网络自组组织演化化戎械玫玫焦惴旱旱难芯俊俊湫偷偷慕惴缫先核核惴筛鎏逡逡谰菁虻虻嬖颍颍蠢植际际叫饕饕揽咳禾禾宓牧孔远罢易钣钣怕肪叮叮蝗挝穹穹峙渫嘀

55、悄悄芴宀惺迪衷衷诶肷邢薜薜氖萁萁峁股希希罢乙乙桓雎愀际跫跫鼓鼓勘旰荡锏锏阶畲蠡蠡蛘咦钚钚慕猓猓蝗斯扇斯斯子的的非线性性相互作作用引起起,是远远离热平平衡的相相变,是是自组织织的研究究方向之之一;网网络自组组织演化化研究在在内在机机制驱动动下,网网络自行行从简单单向复杂杂、从粗粗糙向细细致方向向发展,不断地地以局部部优化达达到全局局优化的的过程。研究自组组织必然然要提到到耗散结结构理论论,比利时科学家普普里高津津1969年提提出耗散散结构理理论后,这一理理论就被被广泛地地应用于于物理、生物、化学乃乃至社会会科学的的研究中中。由耗耗散结构构引出的的自组织织现象更更是打破破了人类类对自然然的常规规认

56、识。耗散结结构理论论和协同同学从宏宏观、微微观及两两者的联联系上回回答了系系统自动动走向有有序结构构的问题题,其成成果被称称为自组组织理论论。出现自组组织现象象的系统统必须是是耗散结结构的。耗散结结构理论论指出:一个开开放系统统处在远远离平衡衡态的非非线性区区域,当当系统的的某个参参数变化化到一定定的临界界值时,通过涨涨落,系系统发生生突变,即非平平衡相变变,其状状态可能能从原来来的混乱乱无序的的状态转转变到一一种在时时间、空空间上或或功能上上有序的的新状态态,这种种新的有有序结构构(耗散散结构)需要系系统不断断地与外外界交换换物质和和能量才才能得以以维持并并保持一一定的稳稳定性。从热力力学的

57、观观点来说说,“自自组织”是指一一个系统统通过与与外界交交换物质质、能量量和信息息,而不不断地降降低自身身的熵含含量,提提高其有有序度的的过程。耗散结构构理论指指出一个个系统要要形成耗耗散结构构需要满满足以下下几个条条件:(1)系系统必须须是开放放的;(2)系系统需要要保持远远离平衡衡态;(3)系系统内部部存在着着非线性性相互作作用;(4)系系统存在在涨落。云计算大大数据集集群具有有数量众众多的节节点,对对比耗散散结构的的特点,集群系系统本身身满足耗耗散结构构的要求求:(1)云云计算大大数据集集群系统统存在着着与系统统外的能能量、物物质和信信息的交交换,满满足耗散散结构的的第一个个条件;(2)

58、一一个运营营良好的的云计算算大数据据集群系系统节点点负载是是被有效效均衡的的,系统统的均衡衡状态是是一种熵熵值较低低的远离离平衡态态的状态态,满足足耗散结结构的第第二个条条件;(3)云云计算大大数据集集群系统统是一种种具有海海量节点点的高耦耦合系统统,由于于在云计计算系统统的节点点间中存存在着频频繁的计计算迁移移、存储储迁移、计算备备份、存存储备份份、节点点失效处处理等节节点间的的高耦合合性操作作,系统统内部存存在着大大量的相相互作用用,系统统内部存存在着非非线性相相互作用用,满足足耗散结结构的第第三个条条件;(4)云云计算大大数据集集群系统统内的各各种状态态参数会会随着外外部请求求的变化化出

59、现涨涨落,满满足耗散散结构的的第四个个条件。云计算大大数据集集群系统统的抽象象描述如如图2.6所示示。图2.6云计计算大数数据集群群系统的的抽象描描述从图2.6中我我们可以以看出:集群系系统运行行时需要要能量的的输入,同时系系统内的的一部分分能量又又会转变变为热能能流出系系统;集集群系统统需要不不断地接接受系统统外传入入的数据据并进行行处理,同时又又会不断断地向系系统外传传出数据据;集群群系统由由于具有有很好的的弹性规规模且又又非常大大,所以以节点的的增加和和节点的的失效都都十分频频繁;同同时由由于系统统内部又又存在大大数据迁迁移、计计算迁移移、负载载均衡等等相互作作用,因因此可以以把集群群系

60、统抽抽象地描描述为与与外界有有大量能能量、信信息、物物质交换换的开放放系统。图2.7所示为为1000个节节点的系系统在不不同的负负载均衡衡策略下下在参数数相空间间和动量量相空间间(相空空间的基基本知识识见本书书10.3节)中的仿仿真实现现结果,体现了了集群系系统的简简单自组组织现象象,图中中上面一一排是在在参数相相空间的的仿真结结果,下下面一排排是动量量相空间间的仿真真结果。图2.7集群群系统在在不同的的负载均均衡策略略下的简简单自组组织特性性通常参数数相空间间的形态态能反映映系统的的静态工工作情况况,动量量相空间间的形态态能反映映系统的的动态工工作情况况,从图图2.7中可以以看出使使用不同同

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论