数据网格中数据复制管理技术研究.docx
《数据网格中数据复制管理技术研究.docx》由会员分享,可在线阅读,更多相关《数据网格中数据复制管理技术研究.docx(46页珍藏版)》请在冰豆网上搜索。
数据网格中数据复制管理技术研究
目录
摘要I
AbstractII
1绪论
1.1研究背景
(1)
1.2国内外研究现状(3)
1.3研究的内容(8)
1.4本文结构(9)
2数据复制管理技术
2.1数据复制管理相关概念(10)
2.2数据复制管理技术的特点和功能(12)
2.3数据复制管理关键技术(13)
2.4小结(14)
3副本创建策略
3.1问题的提出和网格环境(15)
3.2相关的工作及评价(16)
3.3域内副本衍生和域间副本创建策略(20)
3.4小结(22)
4副本定位机制
4.1问题的提出(23)
4.2相关工作及评价(24)
4.3一种改进的分布式动态副本定位方法DDRL(26)
4.4小结(30)
5数据复制管理系统原型设计实现
5.1原型系统环境(31)
5.2系统各角色之间的具体实现(31)
5.3各功能模块具体实现(33)
5.4原型系统测试及分析(37)
5.5小结(43)
6总结和展望
参考文献(47)
摘要
计算网格被用来解决广域网中分布的资源共享、互联和互操作问题。
随着数据密集型应用的飞速发展,数据呈爆炸式增长,数据网格技术应运而生,而且正成为网格技术的另外一个研究重点。
数据复制技术是数据网格中一个重要的组成部分,被广泛应用于分布式数据库、移动数据库和Internet等分布式环境之中。
创建副本可以降低远程访问该数据的网络延迟以及带宽消耗,还可以提高网络的负载均衡。
而良好的副本定位机制可以有效的定位可能存在的诸多副本也是数据网格关注的重要问题之一。
主要对数据复制管理中的副本创建策略和副本定位机制两个方面展开了研究。
副本的创建策略研究的是如何在合适的时间、合适的地点创建相应数据副本。
通过分析和研究用户驱动和利润驱动的副本动态创建策略,提出域内副本衍生和域间副本创建相结合的副本创建策略。
基于数据网格的层次性,把整个网格划分为域内和域外两部分,针对各自不同的特性,实施不同的副本创建方法,有效提高了访问效率、减少带宽消耗、节省存储空间,通过仿真试验验证了上述优越性。
数据副本的定位也是提高数据访问速度的一个重要方面,通过综合研究和评价基于同一个模型的几种分布式、动态自适应的副本定位方法,提出一种改进的分布式动态副本定位方法(DecentralizedDynamicReplicaLocationmethod,DDRL)。
通过对算法进行理论分析和测试,结果表明DDRL定位方法能够实现宿主节点的负载均衡,同时该方法具有可靠性高、分布性、可扩展性好等特点。
关键词:
数据网格;数据复制;副本创建;副本定位
Abstract
Computationalgridhasbeenusedtosolveawideareanetworkdistributedresourcesharing,networkingandinteroperabilityissues,withtherapiddevelopmentofdata-intensiveapplicationsandtheexplosivegrowthofdata,DataGridemergedandbecomeanotherfocusofgrid.
DataReplicaManagementisoneofthecriticalpartsinDataGrids.Ithasbeenwidelyappliedintheareasofdistributeddatabase,mobiledatabase,Internetandotherdistributedenvironments.Replicationcanreduceaccesslatency,andbalancetheloadsfordistributedapplications.ExcellentlyReplicalocationisalsoimportanttoreduceaccesslatencyindatagrids.Thispaperinvestigatesontwocomponentofreplicamanagementindatagrids:
replicascreationstrategiesandreplicalocationmechanism.
Replicascreationstrategiestendtomakedecisionsonwhereandwhentocreatewhichdatareplicas.weproposeourreplicascreatingstrategybasedoninvestigatingandanalyzingtherelatedresearches.Themethodemploythedifferentmethodsbetweentheinnerdomainandtheinterdomain.Thismethodcanalsoreduceaccesslatency,improvedatalocalityandimprovetheoverallperformanceofthegridsystem.
Replicalocationisalsoimportanttoreduceaccesslatencyindatagrids.weproposedanimprovedreplicalocationmechanism--DecentralizedDynamicReplicaLocationmethod(DDRL),basedoninvestigatingandanalyzingsomeDynamicself-AdaptiveReplicaLocationMethod.
Keywords:
DataGrid;DataReplica;Replicacreation;Replicalocation
1绪论
1.1研究背景
1.1.1网格计算模型
从1969年最早的互联网雏形由美国军方采用到今天人们在互联网上进行科学计算、阅读新闻、采集信息、和网上聊天以及游戏等,基于Internet的电子政务、电子商务、数字地球也应运而生,互联网高速发展,已经成了人们日常生活不可或缺的一部分。
然而,科学家们也被当前互联网存在的一些缺憾困扰,尤其是在进行大规模分布式计算时,诸如网络瓶颈、资源共享之类的问题也层出不穷。
因此他们潜心研究继Internet和Web之后的第三代互联网——网格。
网格(Grid)自90年代中期被提出以来,得到迅速的发展,被称作“下一代互连网”。
它的目标是将地理上分布、异构的各种计算机、服务器、虚拟现实系统等所有的网络资源通过高速互连的网络连接集成起来,以实现资源的高度共享和统一访问,从而消灭资源孤岛。
所以网格最初被提出并研究的原由是为了大规模的并行计算,称为计算网格[1,2](GridComputing)。
计算网格在科学研究和工程计算中发挥了巨大的作用,取得了巨大的成功。
然而,人们需要的不仅是实施大规模的数据计算,还需要存储、传送、分析海量数据――科学研究、军事决策、战场仿真、分子物理、数字地球计划…,都迫切需要缩短提取和处理原始数据到高层信息的时间。
这就需要扩充网格的数据管理能力,建立一种有效的数据管理体系结构以对网格的高效的数据访问提供有力支持。
在这种情况下,数据网格应运而生。
1.1.2数据网格的产生
网格计算最重要的特征就是资源的共享和协同计算,由于技术的发展,现代大型科学工程研究,信息服务和数字媒体应用中的数据呈爆炸式增长,应用数据从几十个Terabyte到Petabyte,而且还在持续高速的增长,数据已经成为一个重要的资源,例如全球气候模拟、高能物理、生物计算、战场仿真、核模拟、数字地球,电子商务、电子政务、数字媒体等应用。
它们的数据将达到几十个Terabyte至Petabyte的级别,地理上广泛分布的用户都希望能够访问、分析和使用这些庞大的分布数据,而他们的分析方法往往是计算复杂和计算量大,这种结合海量数据集合,地理上分布的用户和资源,以及计算密集型的分析处理应用导致现有的数据管理体系结构、方法和技术己经不能很好的满足高性能、大容量分布存储和分布处理能力的要求,如何存储、分发、组织和管理、高性能处理、分析和挖掘海量分布数据成为许多应用的首要问题。
数据网格技术的发展为解决这个问题提供了一条有效的技术途径。
数据网格[3](DataGrid)是当前网格领域的研究热点,它的概念来自网格。
它是网格技术在数据管理方面的应用和实现。
最终目标是建立异构分布环境下海量数据的一体化操作的构架和环境,从而更好地解决海量数据难于组织、难以处理的问题。
它通过开发能够集成网络上分布的多个数据集之类的资源,形成单一虚拟的数据访问、管理和处理环境,为网络用户屏蔽底层物理资源,从而建立分布式海量数据的一体化数据访问、存储、传输、管理与服务构架。
在数据量庞大且结构复杂的数据网格环境中,衡量不同系统的技术的一个重要指标就是数据访问时间。
在以往的分布存储技术中,网络延迟是影响数据访问时间的重要因素之一。
虽然随着网络性能的提高,网络延迟将逐渐降低,但访问本地数据与通过网格访问远程数据相比,特别是数据量庞大且结构复杂的数据网格环境中,仍存在很大的性能差异。
通过数据复制技术(DataReplicate)为网格环境下的客户提供多个数据备份,可以有效减小数据访问时间,降低网络带宽负载,而且还可以提高整个系统的负载均衡性和可靠性。
这样数据复制技术在数据网格中的应用就越来越广泛。
数据复制管理(DataReplicatingManagement)成为人们广泛关注的研究领域之一。
复制技术并不是一个崭新的概念,在分布数据库、分布对象计算、移动计算等领域已得到广泛应用。
由于不同的研究前提、研究目标和对网络环境的假定,现有的一些复制策略和技术不能很好地综合应用在数据网格系统中。
因此需要在这些策略的基础上,根据应用特点和用户需求,综合设计、实现符合数据网格特性的数据复制策略和技术。
1.2国内外研究现状
1.2.1数据网格的研究现状
数据网格是面向数据密集型应用的网格体系结构。
数据网格为各种应用提供了一个高性能、大容量、高速传输的并行分布广域计算平台,应用领域十分之广,自提出以来受到全世界很多国家和科学研究机构的广泛重视,并开展了诸多重大数据网格项目的研究。
近年来,世界各地都启动了大型网格计划,并得到了产业界的大力支持。
目前,已有许多网格研究的组织和项目。
世界信息技术大国都认识到网格对当前网络技术巨大的拓展功能和宏伟的发展前景,把发展网格技术放到了战略高度,纷纷投入巨资,争相发展网格技术,力图抢占至高点,获取竞争新优势。
在网格研究的基础上,数据网格的研究工作也在世界各地逐步开展起来,各国政府和研究机构结合具体的应用领域推出了一系列重要的研究计划,具体工作如下:
Globus[4,5]是最具有影响力的网格研究项目,由美国Argonne国家实验室、南加州大学和芝加哥大学联合研制,主要研究网格基础理论和关键技术、网格软件工具的开发、试验平台的建立和网格应用的开发。
Globus提出了开放网格服务体系结构OGSA(OpenGridServiceArchitecture),建立GlobusToolkit[6]工具包,提供一整套关于资源管理、信息服务、数据管理技术等的SDK和API,用户可以选择其中的工具模块进行高层次的应用开发,因此国际上很多网格项目都采用了Globus系统。
Globus系统最初是面向计算网格的,后来在原有的基础上增加了数据管理的功能,对数据的高速传输、元数据管理、数据复制、数据副本选择等进行了研究和实现,成为数据网格应用的开发平台。
GlobusDataGrid[7,8]由美国圣地亚哥超级计算中心(SDSC)的存储资源代理(SRB)系统支持。
GlobusDataGrid数据网格结构可以抽象为核心服务层和高级服务层。
其中的核心服务主要提供存储系统的数据访问、元数据访问和系统配置元数据等服务。
具体提供访问和管理位于各类存储系统,包括高性能存储系统(HPSS)、分布式并行存储系统(DPSS)甚至更复杂的SRB系统上的数据的机制,并且还可提供访问和管理有关这些数据的信息,包括应用元数据、复制元数据和系统配置元数据等。
高级服务层建立在核心服务层之上,主要提供数据管理的功能,是根据特定应用的需求在网格环境中对数据访问、数据传输、数据复制、复制选择以及查询优化等进行管理。
欧洲原子能研究机构CERN成立于1954年,是世界最大的粒子物理研究中心,由其主持开发的欧洲数据网格(EuropeanDataGrid)项目是另一个著名的网格项目,其基本思想是将大型强子对撞机LHC(LargeHadronCollider)等物理设备产生的超大规模海量数据分散到全球的计算机和存储系统上进行处理,将应用扩展到高能物理学、地球观测和生物信息学等科学研究领域。
欧洲数据网格(EUDataGrid)[9]是建立在Globus之上的,其解决的主要问题包括:
负载调度与管理、数据管理、海量存储管理、资源管理和网格监控。
EUDataGrid需要开发中间件以支持对海量数据的访问,既要有统一的名字空间和统一的数据格式,又要能在不同站点之间高速移动和复制数据,还要保持远程数据拷贝的一致性。
EUDataGrid提供不同格式数据之间的转换接口,同时它还要负责将本地的海量数据存贮系统集成到网格的数据管理系统中,即用统一的接口屏蔽不同站点的数据存储方式和处理方式之间的差异,使分布的存储资源能够无缝融合。
网格物理网项目(GridPhysicsNetwork,GriPhyN)[10]是由实验物理学家和IT研究人员联合开发的一个大型数据网格项目,提出了虚拟数据的概念和描述语言,为数据的自动生成和再生成提供了比较系统和完整的方法,以解决高能物理等物理科学领域的数据管理问题,向全球的科学家提供一个面向数据处理的计算平台。
另外,AvakiGrid是在数据网格技术方面做的比较成功的网格软件。
如要由网格协议层、系统管理服务层、应用服务层三个服务组成。
国内对网格的研究始于2000年,与国外相差时间较短,不足十年,都以研究性网格为主。
目前,我国己经通过863、十五攻关等计划资助建立了中国国家网格(CNGrid)、织女星网格(VegaGrid)、中国教育科研网格(ChinaGrid),上海交通信息网格、中国空间信息网格等若干重大项目,并已经取得了一些成果。
1.2.2数据网格的关键技术
数据网格要求屏蔽底层各种数据异构性和分布性,而且要考虑资源的动态性、个体的自治性、相互的协同性等特点。
因此构建数据网格比较困难,需要解决以下关键技术[11]:
1.元数据访问
数据访问是数据网格的基本操作,用户不是直接访问数据而是通过提供数据的各种描述信息来间接访问数据。
这些描述信息包括:
文件的类型、创建时间、大小等。
数据网格用元数据来表示上述描述信息。
元数据是具有一定格式和语义的数据,所有的元数据构成元数据目录,目录中每一项对应一个文件的描述信息,用来描述文件。
其工作原理是,元数据访问服务器通过用户描述的请求信息,形成一条元数据,然后查询元数据目录,返回符合的文件给用户。
2.复制管理服务
数据网格使用物理文件名和逻辑文件名对文件进行管理。
逻辑文件名是一个文件在全局网络范围内区别其他文件的独一无二的标识,而物理文件则是这种文件在不同主机不同网络的实际存在位置。
所以一个逻辑文件可以对应多个物理文件(也叫物理备份),但它们都有一个统一的逻辑文件名。
复制管理服务就是对一个逻辑文件名与其对应的多个物理文件名进行映射管理。
3.动态数据复制技术
动态数据复制技术就是对文件的创建、删除和管理都可以动态进行。
复制数据的目的就是为了平衡网络带宽、提高传输速度、避免单点失效。
因此,数据复制在数据管理中相当重要。
理想的复制技术,应该随着用户的需求动态的管理数据复制,目前存在最优客户端、完全存储、快速广播等动态数据复制策略,他们各有其优缺点,应该根据不同需求,灵活应用。
4.虚拟数据与对象复制
虚拟数据是一个新概念,主要研究对象是数据的生成。
目的是通过虚拟数据和对象复制技术来实现获得原始数据的生成、分析、处理方法。
5.网格文件传输协议GridFTP
GridFTP协议解决在异构的数据网格平台,高效、安全的传输数据。
它建立在标准的FTP的基础之上,除了继承标准FTP协议的扩展性好、应用广泛、标准化的特点之外,还增加了适应数据网格结构的新特性:
支持网格安全体系、实现了第三方控制数据传输能力、分段式数据传输等,足以解决网格中安全高效数据传输的问题。
6.数据压缩
数据网格在存储和传输数据时,往往需要先压缩要传输的数据,以节省存储空间,提高传送速度和减少带宽的消耗。
在元数据的存储和管理中也用到数据压缩的技术。
7.数据服务流程
数据网格的一个主要的服务就是根据用户提供的描述信息,经过分析处理把最合适的文件通过最安全、快捷的方式传给用户。
这个过程就包括分析文件、查找文件、传输文件等数据服务流程。
1.2.3数据复制管理的研究现状
确保对庞大的分布数据集的有效访问是对网格设计者的一个巨大挑战,广域网的高延迟是对分布式数据集访问的主要障碍。
数据复制技术通过把大量的副本数据存储在不同的结点上,大大提高了数据的可靠性,降低了对网络带宽的消耗,增加了系统的容错性。
数据复制管理[12,13]的研究内容是如何制定有效的数据复制管理策略解决副本创建、副本删除、副本定位、副本选择和副本一致性管理等问题,并且副本管理策略必须适应分布、异构、动态的网格环境。
复制的管理是Globus中数据网格的重要组成部分,给数据网格系统提供了复制管理服务ReplicaManagementService。
Globus复制管理体系结构是一个分层结构,复制管理模块主要由记录跟踪副本的复制目录(ReplicaCatalog)和负责数据传输的GridFTP组成,其复制管理是围绕集中式的副本目录进行的。
最底层是副本目录,其功能包括:
用户把文件注册为logicalcollections(逻辑集合)、提供文件(文件集合)的逻辑名字到相应的存储系统的位置的映射。
GlobusToolkit提供了一套高层的副本管理API,可以在存储系统上创建、删除副本,并可以调用底层命令在副本目录中查找和更新对应的实体。
另外GlobusToolkit提供了一套底层的副本管理开发工具,但并没有提供副本动态创建、副本定位选择等功能,用户可以在这些工具的基础上开发功能更加强大的数据网格系统。
SRB软件提供对各种异构、分布式存储资源包括关系数据库、分布式文件系统等的统一访问,采用集中式的管理方式。
它为用户提供了创建文件副本的统一方法,简化了上层应用的操作复杂性。
Freenet结合文件的利用情况和“懒惰”的复制技术形成一个适应性的缓存系统,该系统包括了副本管理和副本定位机制;“受欢迎”的文件总是被复制到离用户最近的位置上,而“最不受欢迎”的文件最终都会被删除。
文件的定位机制根据的也是文件的利用模式而采用动态的路由表。
由于Freenet基于的假设是“最不受欢迎”的文件就是最没有用的文件,这对于一些科学应用来说是不适合的。
欧洲数据网格项目在数据管理的研究上比较全面和深入,它在Globus的基础上开发出数据管理软件网格数据镜像(GridDataMirroringPackage,GDMP),进行高效、安全的副本管理。
GDMP提供将文件从一个站点复制到另一个站点的功能,它在底层使用的是GlobusToolkit中的副本目录,并开发了面向对象的副本目录API。
欧洲数据网格在GDMP的基础上开发出功能更为强大的副本管理系统Reptor,加入了网络结构副本动态创建、副本选择和管理副本元数据目录的功能,主要针对的是具有层次性拓扑结构、节点存储能力很强的高速网格系统。
Giggle[15]框架是Globus和欧洲数据网格项目联合提出的副本定位机制。
Giggle提出基于本地副本目录(LRC)和副本定位索引(RLI)的层次式副本目录,使用这种层次式的逻辑结构,可以有效提高副本管理的效率。
1.3研究的内容
数据网格中副本创建策略就是确定创建副本的时间和地点,要解决的问题是什么时候创建数据的副本,创建哪个数据的副本,以及在哪个网格节点中创建该副本,以缩短数据访问时间、降低网络带宽消耗,实现网格系统的整体性能优化。
在制定副本创建策略时,考虑的因素主要包括网格系统的拓扑结构、系统运行负载、存储终端效率、网络状况和数据副本大小等物理特性因素以及用户访问模式[14]。
现有的副本创建策略多数依据的是在层次网格拓扑结构中用户请求文件的频率。
在数据网格系统为逻辑文件建立了多个副本后,为了满足用户访问逻辑文件的请求,系统需要准确快速地定位的副本,并从中选出最佳副本,该问题即数据网格系统中的副本定位问题。
副本定位是网格环境下资源定位的关键问题。
系统需要为用户提供副本定位所需的逻辑数据项标识,以获取该数据项的一个或者多个副本。
副本定位是数据网格系统中数据访问和管理的基础,对整个数据网格系统的性能有着重要影响。
要针对低端数据网格系统的特点,研究数据网格系统中的副本定位机制。
本文对数据复制管理策略的研究工作重点研究的是数据副本的定位机制和副本创建策略这两个方面,在这两个方面中提出了自己的方法,并在一定程度上验证了方法的优越性。
由于目前考虑的是一旦产生就很少改变的数据,对副本的一致性这个重要问题的研究还没有展开,这会是我们将来的重要研究工作之一。
系统或用户在访问活动中有可能建立不同的副本,不同用户则出于不同考虑,可能要求使用不同位置的副本获取数据,原则是访同时间尽可能短。
这样既增强数据资源的可用性,防止单个数据资源成为瓶颈,又能减少数据访问时间,提高系统整体性能,还能实现系统的负载平衡。
复制管理服务中的副本创建(ReplicaCreating)根据用户的访问活动或系统管理命令新建副本。
本文本文提出域内副本衍生和域间副本创建相结合的副本创建策略。
并且分析求证了这种创建策略可以有效提高访问效率、减少带宽消耗、节省存储空间。
副本定位(ReplicaLocating):
将系统上层使用的逻辑文件定位到某个具体副本上。
尽管在很多著名的网格系统中提出了一些相应的副本定位策略,并在一定程度上保证了系统中数据的安全性和可靠性,但是大多是集中式的去解决副本定位之类的问题。
本文试图用分布的方式去解决数据分布的问题,经过对DSRL模型的改进算法来解决数据网格中数据副本的定位问题。
模拟实验说明该机制能够实现宿主节点上的负载均衡性。
数据复制管理是数据网格中的一个重要研究课题,它对提高数据网格系统的服务质量起着至关重要的作用,本文首先介绍了网格计算模型和数据网格的产生,综述了数据网格以及复制管理策略的研究现状,并在此基础上对数据网格中数据数据复制管理策略展开研究,主要研究管理策略中数据副本的定位,以及副本创建策略两个主要方面,经过相关研究的分析,讨论它们的优劣性,结合多个策略的优点提出相应策略和方法。
1.4本文结构
本文对数据网格中数据复制管理技术进行研究,在副本创建技术上提出一种域内副本衍生和域间副本创建相结合的副本创建策略。
在副本定位机制上,提出一种改进的基于分域思想的分布式动态副本定位机制。
并实现了针对这