一种云环境下海量数据资源管理框架的制作方法

文档序号:7684699阅读:238来源:国知局
专利名称:一种云环境下海量数据资源管理框架的制作方法
技术领域
本发明属于数据库技术领域,特别涉及一种云环境下海量数据资源管理框架。
背景技术
随着互联网的飞速发展,很多应用的数据量都达到了 TB级别甚至PB级别,如 Google已经在全球部署了 100多万台服务器用来处理它庞大的数据量faceBook每天上载的照片均超过了 1亿张以上,每天照片的浏览量超过150亿张以上,随着!^ceBook最近的进入中国市场的步伐加快,其数据量将更加面临着一个直线的上升。2010年9月份图片共享网站Flickr所收录的上传图片数量超过了 50亿张。所有的这些数据存储在不同的数据中心、集群和服务器中,这是一个非常复杂的异构环境。如何管理这些海量数据资源,使之能够以安全、高效、一致的方式提供按需服务是目前云环境下数据资源管理面临的一个巨大的困难和挑战。

发明内容
为了克服上述现有技术的不足,本发明的目的在于提供一种云环境下海量数据资源管理框架,可以实现对云环境下异构的海量资源的统一管理和组织,从而更好地服务于人类需求。为了实现上述目的,本发明采用的技术方案是一种云环境下海量数据资源管理框架,包括物理存储层,包含存储域与分布式文件系统,用于存储互联网中的所有数据;海量存储网,是指所有的物理节点都抽象与虚拟化成逻辑节点,组成的一个存储网络,为后续的资源分配、调度、副本管理与调度提供基础;数据转换层,将各种异构的结构化或者非结构化数据转换成为统一的云数据库系统存储的数据;数据管理层,管理所有存储在云数据库中的被转换后的数据;安全管理层;资源组合层,根据应用层对资源的需求,对下层的资源进行资源组合,提供满足应用层需求的各种服务;应用层,将用户的需求进行无损分解,形成云数据库能够提供的各种资源,然后通过资源组合得到用户所需要的各种云服务。所述云数据库支持从其他各种数据源转换过来的数据并将其存储,例如,我国清华大学开发的 THCloudDB (TsingHua Cloud DataBase)系统。所述物理存储层中,存储域由数据中心集群、各种企业集群和普通服务器组成;分布式文件系统能够让PB级的数据量分布在各种节点上面。所述安全管理层包括可信监控、云资源认证中心及其云安全协议CSP,其中可信监控能够对所有资源进行可信监控,云资源认证中心对云环境下的所有资源进行认证,包括对应用层的每个应用程序以及应用程序所有接口进行认证;对云数据库系统进行认证;对云系统中的所有参与者进行认证;对云存储系统中的每个数据中心,集群及其服务器进行认证。本发明与现有技术相比,建立了一个包含物理存储层、海量存储网、数据转换层、 数据管理层、安全管理层、资源组合层及其应用层的云环境下的海量数据资源组织与管理框架,实现了对云环境下海量数据资源的管理与组织,从而更好地服务于人类。


图1为本发明的云环境下海量资源组织与管理体系架构框图。图2为本发明所述海量存储网框图,圆圈表示将实际的每个物理存储节点都虚拟后的逻辑节点,Ni, N2,……都是对逻辑节点的编号,物理节点之间的物理连接在该存储网中用线条连接,用Setl, Set2,……表示节点与节点之间的数据流量,如节点Nm+2与节点 Np之间的流量用kt T表示。图3为本发明所述THCloudDB的体系架构框图。图4为本发明所述云安全协议CSP框图。
具体实施例方式下面结合附图和实施例对本发明做进一步详细说明。如图1所示,本发明为一种云环境下海量数据资源管理框架,云数据库支持从其他各种数据源转换过来的数据并将其存储,本实施例为我国清华大学开发的 THCloudDB(TsingHua Cloud DataBase)系统,本发明包括物理存储层,主要由存储域和分布式文件系统组成,它用于存储互联网中所有的数据。存储域是指存储各种互联网数据的实际的物理设备,主要包括专用的数据中心集群 (主要是指专门给提供数据中心服务的机构和企业)、各个企业自己的数据中心集群(企业自建的数据中心)及其各种存储服务器(有些企业没有建立数据中心,则直接用存储服务器存储)等等组成。分布式文件系统提供一种存储策略,将互联网上海量的PB级、EB级甚至观级的数据分布存储在各种村粗数据节点上。本发明使用清华大学自己研发的分布式文件系统THDFS (TsingHua Distributed File System)作为文件存储策略,将云环境下各种数据分布存储在各种存储数据节点上。物理层上由很多不同的云组成,云与云之间互相同构或者异构。数据块可能存储在不用的云中,如Ni,N2,……,Nll等等数据块它们的数据副本可能存储在不同的云中,如m在图1中存储在两个不同的云中。同构的云之间进行各种交互比较简单,但是在异构的云之间进行数据交互则将十分复杂和困难,故云与云之间需要进行互操作,建立的统一的互操作的标准可以实现在同构或者异构云之间进行交互,从而屏蔽掉各种异构云的差别,做到对外统一与透明。在物理层中再使用虚拟化技术, 将各种物理上的存储节点虚拟化成为一个逻辑上的存储节点,为构建海量存储网提供抽象基础,海量存储网为后续的资源分配、调度、副本管理与调度提供基础;当海量存储网形成后,将互联网中所有的数据通过海量存储网归类(当海量存储网更新时,可以动态交互)并存储到相应的存储系统中。其中RDBMS(Relational DataBase Management System)为关系数据库系统;ORDBMS (Object Relational DataBase Management System)为对象关系数据库系统;NoSQL(非关系型数据库);Document (文档)及其Others (其他数据源)等等。然后将各种数据来源统一进行数据转换成 THCloudDB (TingHua CloudDataBase)来进行统一存储。THCloudDB数据管理中心对应着THCloudDB数据库系统的管理功能,对THCloudDB 数据库中的所有数据及其元数据、索引、数据库安全等等进行数据的管理监控。云安全层包含可信监控、云资源认证中心及其CSP (Cloud SecurityProtocol,云安全协议)三大部分,它负责整个环境的安全管理。THCloudDB数据管理中心、THCloudDB、 所有各种数据源、海量存储网及其所有的物理存储节点都需要由该层进行安全监控与管理。在最上层应用层中,所有的应用都以用户的需求为驱动,整个应用环境具有跨域、 异构及其在云复杂网络环境下。通过将这些用户的需求进行分解,分解过程中得知完成该应用需要的资源(如在某个应用中需要Ni,N4, N6及其WO四个资源)。在获取应用所需资源时候,需要通过THCloudD数据管理中心读取相应资源(如N1,N4, N6及其附0)。最后根据这些读取的资源组合成用户需求驱动的某个复杂云(存储)应用。海量存储网,如图2所示,底层数据存储在复杂的异构环境中,为了更好地管理并利用成千上万的服务器进行云环境下的分布式存储服务,在本层将所有的物理节点都抽象与虚拟化成逻辑节点,组成一个巨大的海量存储网络,从而为后续的资源分配、调度、副本管理与调度等等提供了一个基础;海量存储网的生成与更新基本方法如下步骤1 扫描“心跳”XML文件,若无新节点增加,也无节点删除,维持原海量存储图不变,若有新节点增加,则转到步骤2,若有节点删除则转到步骤3,其中“心跳” XML文件是分布式文件系统元数据管理节点固有的一个XML文件;步骤2 当有新的节点增加时,判断该新节点位置,并找到该节点物理连接的另外一节点,在该新增节点与物理连接节点之间连接一条线,并转向步骤4;步骤3 当有节点被删除时,判断该节点位置,并找到与该节点相连的所有其他物理节点,将它们之间的所有连线均删除,并转向步骤5 ;步骤4:计算该节点负载量,并将节点负载节点提交资源迁移算法,报告该节点的实际负载情况,以供其参考;步骤5 计算该删除节点的存储资源内容包括资源名称和数量,并转向步骤6 ;步骤6 根据步骤5的内容,计算需要复制的资源及其数量,并将结果提交给资源迁移算法与副本管理与控制算法;步骤7 循环进行节点增加或者删除判断;步骤8 若无新节点增加,或者无节点被删除,则算法终止。海量存储网的负载平衡,海量存储网的负载平衡主要考虑云环境下的数据存储尽量保持平衡,以免出现有些节点过于繁忙,而其他节点则过于清闲的状态,其基本方法如下步骤1 计算节点的当前负载情况;
步骤2 获取当前存储网总负载,并计算出每个节点平均负载;步骤3 若当前节点负载大致等于平均负载,则该节点不发送任何信号,即不接受新资源,也不发送新资源;步骤4 若当前节点负载小于平均负载,则该节点的副本标记为Flag(R) =0,表示该节点可以接收迁移过来的资源;步骤5 若当前节点负载大于平均负载,则该节点的副本标记为Flag(R) = 1,表示该节点不再接收迁移过来的资源;步骤6 重复步骤1到步骤5,不断维持该海量存储网的负载平衡。海量存储网的资源迁移,其基本方法如下步骤1 计算海量存储网中各个节点资源的热度;步骤2 若该节点的资源为原创资源,则不管其资源热度大还是小,则均不迁移;步骤3 若该节点的资源为副本资源,则判断其是否和原创资源在同一机架,若在同一机架则不迁移,否则转到步骤4 ;步骤4:计算该资源最热点访问服务器,将该资源迁移到海量存储网中的访问该资源的热点服务器中存储,该热点服务器必须满足条件Flag(R) = 0,否则找其次热服务器,以此类推;步骤5 在整个海量存储网中重复步骤1到步骤4,动态维持迁移。海量存储网的副本管理与控制,其基本方法如下步骤1 副本在本地数据节点创建,并复制;步骤2 副本复制按照数据重要性进行,对于特别重要的数据复制4份,对于一般重要的数据复制3份,对于不重要的数据复制2份;步骤3 对于特别重要的数据本数据节点的机架内放置两份,其中另外的两份, 通过对该数据的热点进行分析,将其放置在出本地数据节点机架之外的最重要的两个热点机架之中存储;步骤4 对于一般重要的数据本数据节点的机架内放置两份,其中另外的一份, 通过对该数据的热点进行分析,将其放置在出本地数据节点机架之外的最重要的一个热点机架之中存储;步骤5 对于不重要的数据本数据节点的机架内放置一份,其中另外的一份,通过对该数据的热点进行分析,将其放置在出本地数据节点机架之外的最重要的一个热点机架之中存储。数据转换层,将各种异构的结构化或者非结构化数据转换成为统一的云数据库系统存储的数据,海量存储网中包含了各类虚拟节点,每个单独的节点以及不同的节点都可能存储着各种不同类型的数据格式的数据,为了统一数据资源格式,统一为用户提供更好的服务,将各种数据通过数据转换,转换成为消除各种不同语义格式的THCloudDB数据库中的数据,其基本方法如下步骤1 判断数据来源,如果是关系数据库,首先在数据读取前第一行做标记Flag =0,随后将数据按行读入到云数据库中的数据表中;步骤2 判断数据来源,如果是非关系数据库,首先在数据读取前第一行做标记 Flag = 1,随后将数据按列读入到云数据库中的数据表中;
8
步骤3:重复步骤1和步骤2,直到将数据中心、集群或者服务器中数据均存储到云数据库中为止。数据管理层,管理所有存储在云数据库中的被转换后的数据,参见图3,本实施例中,THCLoudDB是一种云环境下的分布式数据库管理系统,该系统主要存储并管理从其他各种数据源转化而来的数据,THCLoudDB是一种分布式、稀疏以及行列混合存储的数据库系统,THCLoudDB数据库是一种混合数据库,它既可以按照行存储也可以按照列存储,它的数据模型可以表示如下
权利要求
1.一种云环境下海量数据资源管理框架,其特征在于,包括物理存储层,包含存储域与分布式文件系统,用于存储互联网中的所有数据; 海量存储网,是指所有的物理节点都抽象与虚拟化成逻辑节点,组成的一个存储网络, 为后续的资源分配、调度、副本管理与调度提供基础;数据转换层,将各种异构的结构化或者非结构化数据转换成为统一的云数据库系统存储的数据;数据管理层,管理所有存储在云数据库中的被转换后的数据; 安全管理层;资源组合层,根据应用层对资源的需求,对下层的资源进行资源组合,提供满足应用层需求的各种服务;应用层,将用户的需求进行无损分解,形成云数据库能够提供的各种资源,然后通过资源组合得到用户所需要的各种云服务。
2.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,所述云数据库支持从其他各种数据源转换过来的数据并将其存储。
3.根据权利要求2所述的云环境下海量数据资源管理框架,其特征在于,所述云数据库为清华大学的 iTsingHua Cloud DataBase。
4.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,所述存储域由数据中心集群、各种企业集群和普通服务器组成;所述分布式文件系统能够让PB级的数据量分布在各种节点上面。
5.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,通过如下方法实现海量存储网的生成与更新步骤1 扫描“心跳” XML文件,若无新节点增加,也无节点删除,维持原海量存储图不变,若有新节点增加,则转到步骤2,若有节点删除则转到步骤3,其中“心跳”XML文件是分布式文件系统元数据管理节点固有的一个XML文件;步骤2:当有新的节点增加时,判断该新节点位置,并找到该节点物理连接的另外一节点,在该新增节点与物理连接节点之间连接一条线,并转向步骤4;步骤3:当有节点被删除时,判断该节点位置,并找到与该节点相连的所有其他物理节点,将它们之间的所有连线均删除,并转向步骤5 ;步骤4 计算该节点负载量,并将节点负载节点提交资源迁移算法,报告该节点的实际负载情况,以供其参考;步骤5 计算该删除节点的存储资源内容包括资源名称和数量,并转向步骤6 ; 步骤6 根据步骤5的内容,计算需要复制的资源及其数量,并将结果提交给资源迁移算法与副本管理与控制算法;步骤7 循环进行节点增加或者删除判断;步骤8 若无新节点增加,或者无节点被删除,则算法终止。
6.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,通过如下方法实现海量存储网的负载平衡步骤1 计算节点的当前负载情况;步骤2 获取当前存储网总负载,并计算出每个节点平均负载;步骤3 若当前节点负载大致等于平均负载,则该节点不发送任何信号,即不接受新资源,也不发送新资源;步骤4 若当前节点负载小于平均负载,则该节点的副本标记为Flag(R) =0,表示该节点可以接收迁移过来的资源;步骤5 若当前节点负载大于平均负载,则该节点的副本标记为Flag(R) = 1,表示该节点不再接收迁移过来的资源;步骤6 重复步骤1到步骤5,不断维持该海量存储网的负载平衡。
7.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,通过如下方法实现海量存储网的资源迁移步骤1 计算海量存储网中各个节点资源的热度;步骤2 若该节点的资源为原创资源,则不管其资源热度大还是小,则均不迁移; 步骤3 若该节点的资源为副本资源,则判断其是否和原创资源在同一机架,若在同一机架则不迁移,否则转到步骤4 ;步骤4:计算该资源最热点访问服务器,将该资源迁移到海量存储网中的访问该资源的热点服务器中存储,该热点服务器必须满足条件Flag(R) = 0,否则找其次热服务器,以此类推;步骤5 在整个海量存储网中重复步骤1到步骤4,动态维持迁移。
8.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,通过如下方法实现海量存储网的副本管理与控制步骤1 副本在本地数据节点创建,并复制;步骤2 副本复制按照数据重要性进行,对于特别重要的数据复制4份,对于一般重要的数据复制3份,对于不重要的数据复制2份;步骤3 对于特别重要的数据本数据节点的机架内放置两份,其中另外的两份,通过对该数据的热点进行分析,将其放置在出本地数据节点机架之外的最重要的两个热点机架之中存储;步骤4 对于一般重要的数据本数据节点的机架内放置两份,其中另外的一份,通过对该数据的热点进行分析,将其放置在出本地数据节点机架之外的最重要的一个热点机架之中存储;步骤5:对于不重要的数据本数据节点的机架内放置一份,其中另外的一份,通过对该数据的热点进行分析,将其放置在出本地数据节点机架之外的最重要的一个热点机架之中存储。
9.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,数据转换层通过如下方法来实现将各种异构的结构化或者非结构化数据转换成为统一的云数据库系统存储的数据步骤1 判断数据来源,如果是关系数据库,首先在数据读取前第一行做标记Flag = 0, 随后将数据按行读入到云数据库中的数据表中;步骤2 判断数据来源,如果是非关系数据库,首先在数据读取前第一行做标记Flag = 1,随后将数据按列读入到云数据库中的数据表中;步骤3 重复步骤1和步骤2,直到将数据中心、集群或者服务器中数据均存储到云数据库中为止。
10.根据权利要求1所述的云环境下海量数据资源管理框架,其特征在于,所述安全管理层包括可信监控、云资源认证中心及其云安全协议CSP,其中可信监控能够对所有资源进行可信监控,云资源认证中心对云环境下的所有资源进行认证,包括 对应用层的每个应用程序以及应用程序所有接口进行认证; 对云数据库系统进行认证; 对云系统中的所有参与者进行认证; 对云存储系统中的每个数据中心,集群及其服务器进行认证。
全文摘要
本发明为一种云环境下海量数据资源管理框架,包括物理存储层、海量存储网、数据转换层、数据管理层、安全管理层、资源组合层和应用层,其中涉及的述云数据库支持从其他各种数据源转换过来的数据并将其存储,例如,我国清华大学开发的THCloudDB系统,本发明可以实现对云环境下异构的海量资源的统一管理和组织,为云环境下的海量、异构的数据组织和管理提供了一套完整的解决方案。
文档编号H04L29/08GK102222090SQ20111014780
公开日2011年10月19日 申请日期2011年6月2日 优先权日2011年6月2日
发明者张勇, 张桂刚, 李超, 邢春晓 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1