多级部署系统的海量数据共享的方法和装置的制作方法

文档序号:7868591阅读:256来源:国知局
专利名称:多级部署系统的海量数据共享的方法和装置的制作方法
技术领域
本发明涉及数据存储技术领域,特别涉及一种多级部署系统的海量数据共享的方法、装置。
背景技术
随着互联网技术的发展,很多需要采集海量数据的大型系统都采用了多级部署的方式,且采集到的数据也大多采取先分块存储后再通过同步等机制汇总到一起的方式。这种方式的优点是可以生成一个拥有全部数据的全量,同时又有各个分量,且分量和全量互为备份。这样,通过访问全量的一个接口即可访问全部数据,在后期的查询操作上节省了大量资源。但是,这种方式同样存在着一个缺点:如果对数据进行修改操作,就需要在修改了全量数据或分量数据后,然后再通过同步等机制对全量数据和分量数据进行同步。对于一个数据需要经常发生变化,或是需要不断采集大量数据的系统来说,这一缺点会导致系统的性能急剧下降。特别是在将大量数据同步到全量数据库时会严重影响全量数据库的性能,从而影响系统的正常使用。另外,由于是海量数据,全量数据库的存储空间也是一个不能忽视的问题。

发明内容
本发明要解决的技术问题是提出了一种针对多级部署系统的海量数据共享的方法和装置,能够克服现有技术中频繁同步对系统性能造成的影响,并节省大量的数据库服务器的存储资源以及网络资源。为解决上述技术问题,根据本发明的一个方面,提供了一种多级部署系统的海量数据共享的方法,包括:根据数据属性对数据进行预分类;为每一种属性的数据配置一个分系统,并将分类后的具有相同属性的数据存储在为该属性数据配置的相应分系统中以使具有相同属性的每一分类的数据只存储在一个分系统中。其中,为每一种属性的数据配置一个分系统还包括:为每一个分系统设置一个特征标签以标识出该分系统的类别。进一步,所述方法还包括:根据数据库的特征生成系统路由表,所述系统路由表中包括每一数据库的特征与该数据库的映射关系;将所述系统路由表存储在每个分系统中。进一步,所述方法还包括:为每一分系统设置访问其他分系统的访问权限。进一步,所述方法还包括:当接收到查询指令时,判断是否能根据待查数据的属性判断该待查数据存储在那个分系统中,如果能则直接根据所述系统路由表匿名访问到存储待查数据的分系统进行查询;否则遍历存储在查询所述系统路由表进行查询。根据本发明的另一个方面,还提供了一种多级部署系统的海量数据共享的装置,包括:预分类模块,用于根据数据属性对数据进行预分类;预存储模块,用于为每一种属性的数据配置一个分系统,并将具有相同属性的所述预分类模块分类后的数据存储在为该属性数据配置的相应分系统中以使具有相同属性的每一分类的数据只存储在一个分系统中。其中,所述预存储模块还用于为每一个分系统设置一个特征标签以标识出该分系统的类别。其中,所述装置还包括:路由表模块,用于根据数据库的特征生成系统路由表,所述系统路由表中包括所述每一数据库的特征与该数据库的映射关系;将所述系统路由表存储在每个分系统中。其中,所述装置还包括:访问权限模块,用于为每一分系统设置访问其他分系统的访问权限。其中,所述装置还包括:查询模块,用于当接收到查询指令时,判断是否能根据待查数据的属性判断该待查数据存储在那个分系统中,如果能则直接根据所述系统路由表匿名访问到存储待查数据的分系统进行查询;否则遍历查询所述系统路由表进行查询。本发明通过以能够明显区分数据的某个标志将数据分类,建立不同的分系统,每个分系统存储某一属性的数据,通过建立系统路由表以及访问权限,实现各分系统互联。在任何一个分系统中查询某一属性的数据时,将根据查询类型查询系统路由表,找到存储该数据的分系统进行查询,从而实现异地查询。与现有技术相比较,本发明技术方案不再必须通过同步等手段组建一个全量的数据库,从而不会有实现全量数据库的网络开销以及数据库性能开销以及存储资源的开销,同时也省去了维护全量数据和分量数据一致性带来的工作量。虽然访问其它分系统进行异地查询会造成系统负载增加,但是相对于全局数据的负载,异地查询的负载要小的多。


图1为本发明实施例的多级部署系统的海量数据共享的方法的流程示意图;图2为本发明实施例的多级部署系统的海量数据共享的装置的结构示意图。
具体实施例方式为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。本发明针对现有技术的分布式存储系统对于分量和全量分别进行操作导致数据要经常发生变化或者要不断采集大量数据时会造成系统性能急剧下降的问题,提出了一种针对多级部署系统的海量数据共享的方法和装置,能够克服现有技术中频繁同步对系统性能造成的影响,并节省大量的数据库服务器的存储资源以及网络资源。根据本发明的实施例,在多级部署系统的海量数据共享的方法和系统中,首先根据数据的属性对数据进行预分类;然后,针对每一种数据属性,配置相应的分系统,并将具有每一种数据属性的预分类数据存储在相应的分系统中。本发明中,将存储数据的系统为多级部署系统,每一级的每一个分系统都有自己独立的数据库,且每一个数据库都可以用来存储海量数据。各分系统的数据很少或者几乎没有交叉,数据能有明显的区分。根据本发明的技术方案,不再必须通过同步等手段组建一个全量的数据库,从而不会有实现全量数据库的网络开销以及数据库性能开销以及存储资源的开销,同时也省去了维护全量数据和分量数据一致性带来的工作量。虽然访问其它分系统进行异地查询会造成系统负载增加,但是相对于全局数据的负载,异地查询的负载要小的多。在本发明的实施例中,数据属性可以是表示数据是属于全国范围内的数据还是局部地区的数据,也可以是表示数据是属于集团公司的数据还是属于集团公司下面的各个子公司的数据。例如,可以将数据按照地域划分,不同的分系统存储不同地域的数据。当然,分类方式有很多种,在此不再枚举。下面,结合附图1所示实施例详细介绍多级部署系统的海量数据共享的方法;具体的,在步骤1,根据数据的属性对数据进行预分类。例如,根据采集的数据属性,对数据进行分类。如果数据属性表明数据涉及到是全国数据还是局部地区数据,可以按照省份或者其它地域方式将数据进行分类。在步骤2,针对每一种属性的数据,为其配置相应的分系统,并根据数据的属性,将所述分类后的数据存储在相应的分系统中以使具有相同属性的每一分类的数据只存储在一个分系统中。为了方便地将每一分类的数据存储到相应的分系统,可以为每一个分系统设置一个特征标签,以标识出该分系统的类别。在步骤3,根据数据库的特征生成路由表,所述路由表中包括所述每一数据库的特征与该数据库的映射关系。由于不同类型的数据存储在不同的分系统中,因此当需要查询数据的时候,就需要找到分系统的网络地址。配置分系统的网络标识以表明每一数据库的特征与该数据库的映射关系,然后汇总成系统路由表,并将系统路由表存储在每个分系统中。这样,每个分系统都可以利用其内存储的系统路由表访问到其它分系统的网络地址以进行数据查询。在步骤4,为每一分系统设置访问其他分系统的访问权限。本发明中,对于每个分系统,都要为其它分系统配置访问权限。显然,各个分系统为其他分系统所配置的访问权限可以不相同。对于任意一个分系统,可以根据实际需要,例如只开放查询权限,保证其它分系统可以正常调用该系统的服务,从而达到其它分系统异地访问本分系统的目的。在步骤5,当接收到查询指令时,判断是否能根据待查数据判断该待查数据存储在那个分系统中,如果能则直接根据对应的路由表匿名访问到该分系统进行查询;否则遍历查询路由表进行查询。需要指出的是,图1所示的方法中,各个步骤标号只为区分不同步骤而并非对于本发明方法的流程顺序的限制。本领域内技术人员可以理解,本发明实施例的方法的步骤顺序可以进行相应调准,例如步骤2、步骤3、步骤4都可以采用任意顺序完成。图2示出了根据本发明实施例的多级部署系统的海量数据共享的装置的结构示意图。如图2所示,多级部署系统的海量数据共享的装置包括:核心控制模块26,以及连接所述核心控制模块26的预分类模块21、预存储模块22、路由表模块23、访问权限模块24、查询模块25。这样,可以通过核心控制模块26来控制整个装置的工作。预分类模块21根据数据的属性对数据进行预分类。例如,预分类模块21可以根据采集的数据属性,对数据进行分类。如果数据属性表明数据涉及到是全国数据还是局部地区数据,可以按照省份或者其它地域方式将数据进行分类。预存储模块22,用于为每一种属性的数据配置相应的分系统,并根据数据的属性,将所述预分类模块21分类后的数据存储在相应分系统中以使相同属性的每一分类的数据只存储在一个分系统中。进一步的,该预存储模块22可以为每一个分系统设置一个特征标签,以标识出该分系统的类别。路由表模块23,用于根据数据库的特征生成路由表,所述路由表中包括所述每一数据库的特征与该数据库的映射关系。由于不同类型的数据存储在不同的分系统中,因此当需要查询数据的时候,就需要找到分系统的网络地址。配置分系统的网络标识以表明每一数据库的特征与该数据库的映射关系,然后汇总成系统路由表,并将系统路由表存储在每个分系统中。这样,每个分系统都可以利用其内存储的系统路由表访问到其它分系统的网络地址以进行数据查询。访问权限模块24,用于为每一分系统设置访问其他分系统的访问权限。对于每个分系统,都要为其它分系统配置访问权限。显然,各个分系统为其他分系统所配置的访问权限可以不相同。对于任意一个分系统,可以根据实际需要,例如只开放查询权限,保证其它分系统可以正常调用该系统的服务,从而达到其它分系统异地访问本分系统的目的。查询模块25,用于当接收到查询指令时,判断是否能根据待查数据判断该待查数据存储在那个分系统中,如果能则直接根据系统路由表,匿名访问到该分系统进行查询;否则遍历查询系统路由表进行查询。本发明通过以能够明显区分数据的某个标志将数据分类,建立不同的分系统,每个分系统存储某一属性的数据,通过建立系统路由表以及访问权限,实现各分系统互联。在任何一个分系统中查询某一属性的数据时,将根据查询类型查询系统路由表,找到存储该数据的分系统进行查询,从而实现异地查询。与现有技术相比较,本发明技术方案不再必须通过同步等手段组建一个全量的数据库,从而不会有实现全量数据库的网络开销以及数据库性能开销以及存储资源的开销,同时也省去了维护全量数据和分量数据一致性带来的工作量。虽然访问其它分系统进行异地查询会造成系统负载增加,但是相对于全局数据的负载,异地查询的负载要小的多。以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种多级部署系统的海量数据共享的方法,其特征在于,包括:根据数据属性对数据进行预分类;为每一种属性的数据配置一个分系统,并将分类后的具有相同属性的数据存储在为该属性数据配置的相应分系统中以使具有相同属性的每一分类的数据只存储在一个分系统中。
2.根据权利要求1所述的方法,其特征在于,为每一种属性的数据配置一个分系统还包括:为每一个分系统设置一个特征标签以标识出该分系统的类别。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:根据数据库的特征生成系统路由表,所述系统路由表中包括每一数据库的特征与该数据库的映射关系;将所述系统路由表存储在每个分系统中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:为每一分系统设置访问其他分系统的访问权限。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:当接收到查询指令时,判断是否能根据待查数据的属性判断该待查数据存储在那个分系统中,如果能则直接根据所述系统路由表匿名访问到存储待查数据的分系统进行查询;否则遍历存储在查询所述系统路由表进行查询。
6.一种多级部署系统的海量数据共享的装置,其特征在于,包括:预分类模块,用于根据数据属性对数据进行预分类;预存储模块,用于为每一种属性的数据配置一个分系统,并将具有相同属性的所述预分类模块分类后的数据存储在为该属性数据配置的相应分系统中以使具有相同属性的每一分类的数据只存储在一个分系统中。
7.根据权利要求6所述的装置,其特征在于,所述预存储模块还用于为每一个分系统设置一个特征标签以标识出该分系统的类别。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:路由表模块,用于根据数据库的特征生成系统路由表,所述系统路由表中包括所述每一数据库的特征与该数据库的映射关系;将所述系统路由表存储在每个分系统中。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:访问权限模块,用于为每一分系统设置访问其他分系统的访问权限。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:查询模块,用于当接收到查询指令时,判断是否能根据待查数据的属性判断该待查数据存储在那个分系统中,如果能则直接根据所述系统路由表匿名访问到存储待查数据的分系统进行查询;否则遍历查询所述系统路由表进行查询。
全文摘要
本发明公开了一种多级部署系统的海量数据共享的方法和装置。本发明中,根据数据属性对数据进行预分类;为每一种属性的数据配置一个分系统,并将分类后的具有相同属性的数据存储在为该属性数据配置的相应分系统中以使具有相同属性的每一分类的数据只存储在一个分系统中。本发明通过建立不同的分系统,每个分系统存储某一属性的数据,通过建立系统路由表以及访问权限实现各分系统互联。在任何一个分系统中查询某一属性的数据时,将根据查询类型查询系统路由表,找到存储该数据的分系统进行查询从而实现异地查询。
文档编号H04L29/06GK103078843SQ201210539929
公开日2013年5月1日 申请日期2012年12月13日 优先权日2012年12月13日
发明者苏超, 李淑惠, 宁江, 郑扬飞, 何岩, 贾晓霞, 王志坚, 胡春波, 郭彦义, 刘毅 申请人:中国电子科技集团公司第十五研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1