一种数据存储复制方法及其存储复制系统的制作方法

文档序号:10655410阅读:369来源:国知局
一种数据存储复制方法及其存储复制系统的制作方法
【专利摘要】本发明属于数据存储复制领域,特别涉及一种数据存储复制方法及其存储复制系统。本发明包括有用于对数据进行查询的主数据集群和用于对数据进行分布式计算的从数据集群,前端传感器将采集到的数据存储于主数据集群的第一分布式数据库中,然后第一分布式数据库向从数据集群中的第二分布式数据库中进行所述数据的复制,所述从数据集群利用内部的分布式计算系统对数据执行分布式计算算法;因此本发明使用两个集群来分别承担对数据的查询和分布式计算的工作,因此本发明保证了日常查询请求效率较高,用户的体验效果较好,而且读写和运算的资源量较小,系统可靠性和稳定性均较高。
【专利说明】
一种数据存储复制方法及其存储复制系统
技术领域
[0001]本发明属于数据存储复制领域,特别涉及一种数据存储复制方法及其存储复制系统。
【背景技术】
[0002]Hadoop是一个Java语言开发的针对集群上大数据集分布式存储和分布式运算开源的软件框架,用户可以利用Hadoop轻松地组织计算机资源,从而搭建自己的分布式计算平台,并且可以充分利用集群的计算和存储能力,完成海量的数据处理,HBase是Hadoop的分布式数据库,用于更改对大数据提供随机、实时的读写访问功能,具有开源、分布式、可扩展及面向列存储的特点。
[0003]现有技术中通常使用一个集群来承担对数据的查询和分布式计算的工作,因此会导致大规模分布式计算在运行的过程中日常查询请求效率下降甚至请求失败,而且所需读写和运算的资源量较大,系统可靠性和稳定性较低,因此,亟需提出一种可以将数据的查询和分布式计算区分开的系统来解决上述问题。

【发明内容】

[0004]本发明为了克服上述现有技术的不足,提供了一种数据存储复制方法,本方法将分布式数据库的存储查询运算和分布式计算分离,因此保证了日常查询请求效率较高。
[0005]为实现上述目的,本发明采用了以下技术措施:
[0006]—种数据存储复制方法,具体包括以下步骤:
[0007]S1、采集传感器将采集到的数据存储于主数据集群的第一分布式数据库,所述第一分布式数据库设计所述数据的存储策略;
[0008]S2、所述第一分布式数据库将所述数据复制到从数据集群中的第二分布式数据库;
[0009]S3、所述从数据集群利用内部的分布式计算系统对所述数据执行分布式计算算法;
[0010]S4、所述分布式计算系统将分布式的计算结果输出。
[0011 ]优选的,步骤SI中的所述第一分布式数据库设计所述数据的存储策略,具体步骤包括:
[0012]SI 1、所述第一分布式数据库将所述数据所存在的数据表的主键自动建立索引;
[0013]S12、将用于查询的字段设置为所述数据表的主键,若所述字段不具备唯一性,则在所述字段上添加序列号。
[0014]优选的,所述步骤S2中的数据复制具体包括以下步骤:
[0015]S21、所述第一分布式数据库向所述第二分布式数据库发送数据写入日志,即所述第一分布式数据库向第二分布式数据库写入数据的同时记录数据的操作和内容;
[0016]S22、所述第二分布式数据库根据数据写入日志写入数据。
[0017]进一步的,所述数据的复制采用主推送的架构模式。
[0018]本发明还提供了一种数据存储复制方法的存储复制系统,本系统包括所述主数据集群和所述从数据集群,其中,
[0019]主数据集群,所述主数据集群的输入端接收所述前端传感器所采集到的数据;
[0020]从数据集群,用于对所述数据进行分布式计算,所述从数据集群的输入端连接所述主数据集群的输出端。
[0021]优选的,所述主数据集群包括第一分布式数据库,所述第一分布式数据库的输出端连接从数据集群的输入端。
[0022]优选的,所述从数据集群包括所述第二分布式数据库和分布式计算系统,所述第二分布式数据库的输入端连接第一分布式数据库的输出端,第二分布式数据库的输出端连接所述分布式计算系统的输入端,分布式计算系统的输出端输出分布式的计算结果至数据库中。
[0023]进一步的,所述第一分布式数据库、第二分布式数据库均为HBase分布式数据库。
[0024]进一步的,所述分布式计算系统为MapReduce分布式计算系统。
[0025]本发明的有益效果在于:
[0026]I)、本发明包括有用于对数据进行查询的主数据集群和用于对数据进行分布式计算的从数据集群,前端传感器将采集到的数据存储于主数据集群的第一分布式数据库中,然后第一分布式数据库向从数据集群中的第二分布式数据库中进行所述数据的复制,所述从数据集群利用内部的分布式计算系统对数据执行分布式计算算法;因此本发明使用两个集群来分别承担对数据的查询和分布式计算的工作,因此本发明保证了日常查询请求效率较高,用户的体验效果较好,而且读写和运算的资源量较小,系统可靠性和稳定性均较高。
[0027]2)、数据的复制具体步骤包括所述第一分布式数据库向所述第二分布式数据库发送数据写入日志,即所述第一分布式数据库向第二分布式数据库写入数据的同时记录数据的操作和内容;所述第二分布式数据库根据数据写入日志写入数据,因此当第二分布式数据库写入数据失败时可以进行回滚操作,当数据库出现故障时,可以对数据进行恢复;且数据的复制采用主推送的架构模式,因此本复制方法是异步的,从数据集群在进行分布式计算时会具备一定的滞后性,可以根据实际情况来选择合理的运行时间,保证了分析的完整性。
[0028]3)、所述第一分布式数据库、第二分布式数据库均为HBase分布式数据库,HBase分布式数据库是一个高可靠性、高性能、可伸缩的分布式数据库,所述分布式计算系统为MapReduce分布式计算系统,能够用来存储和处理大型数据。
【附图说明】
[0029]图1为本发明的结构原理图;
[0030]图2为本发明的数据存储复制方法的流程图;
[0031]图3为本发明的数据存储复制方法的流程图的具体结构流程图。
[0032]10—主数据集群11一第一HBase分布式数据库
[0033]20—从数据集群21—第二 HBase分布式数据库
[0034]22一MapReduce分布式计算系统
【具体实施方式】
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]如图1、2所示,一种数据存储复制方法,具体包括以下步骤:
[0037]S1、采集传感器将采集到的数据存储于主数据集群10的第一分布式数据库11,所述第一分布式数据库11设计所述数据的存储策略;
[0038]S2、所述第一分布式数据库11将所述数据复制到从数据集群20中的第二分布式数据库21;
[0039]S3、所述从数据集群20利用内部的分布式计算系统22对所述数据执行分布式计算算法;
[0040]S4、所述分布式计算系统22将分布式的计算结果输出至存储数据库中。
[0041]下面结合附图3说明步骤SI中的所述第一HBase分布式数据库11设计所述数据的存储策略,具体步骤包括:
[0042]SI 1、所述第一分布式数据库11在所述数据所存在的数据表中自动建立索引;
[0043]S12、将用于查询的字段设置为所述数据表的主键,若所述字段不具备唯一性,则在所述字段上添加序列号,用于保证主键的唯一性。
[0044]下面结合附图3说明步骤S2中的数据的复制采用主推送的架构模式,具体包括以下步骤:
[0045]S21、所述第一分布式数据库11向所述第二分布式数据库21发送数据写入日志,SP所述第一分布式数据库11向第二分布式数据库21写入数据的同时记录数据的操作和内容,当第二分布式数据库写入数据失败时可以进行回滚操作,当数据库出现故障时,可以对数据进行恢复;
[0046]S22、所述第二 HBase分布式数据库21根据所述数据写入日志写入数据。
[0047]主推送即为一个主数据集群将数据复制到任意数目的从数据集群的架构模式。
[0048]如图1所示,一种数据存储复制系统,本系统包括所述主数据集群10和所述从数据集群20,所述主数据集群10用于对所述数据进行查询,所述主数据集群10的输入端接收所述前端传感器所采集到的数据;所述从数据集群20用于对所述数据进行分布式计算,所述从数据集群20的输入端连接所述主数据集群10的输出端。
[0049]所述从数据集群20包括所述第二 HBase分布式数据库21和MapReduce分布式计算系统22,所述第二 HBase分布式数据库21的输入端连接所述主数据集群10中的第一 HBase分布式数据库11的输出端,第二HBase分布式数据库21的输出端连接所述MapReduce分布式计算系统22的输入端,MapReduce分布式计算系统22的输出端输出分布式的计算结果至Orac Ie数据库中。
[0050]如图1?3所示,以交通卡口采集过车数据为例,前端传感器将采集到的过车数据存储于主数据集群10的第一分布式数据库11中,所述第一分布式数据库11在所述过车数据存在的数据表中自动建立索引,因为常用查询项为卡口编号、过车时间、车牌号,因此将卡口编号+过车时间+车牌号设置为所述数据表的主键。
[0051]同时主数据集群10会记录数据写入日志,其中包括全部的写入数据,所述主数据集群10定期将其数据写入日志发送到从数据集群20,从数据集群20根据该日志写入数据,保证数据和主集群一致。
[0052]所述从数据集群20利用所述MapReduce分布式计算系统22执行分布式计算算法,由于数据的复制采用主推送的架构模式,因此本复制方法是异步的,从数据集群在进行分布式计算时会具备一定的滞后性,可以根据实际情况来选择合理的运行时间,保证了分析的完整性。例如,主数据集群10每个半个小时向从数据集群20发送数据写入日志,则从数据集群20应以至少半小时之前的数据作为分析对象。
[0053]最后将分布式计算的结果输出到Oracle数据库中。
【主权项】
1.一种数据存储复制方法,其特征在于,具体包括以下步骤: 51、采集传感器将采集到的数据存储于主数据集群(10)的第一分布式数据库(11),所述第一分布式数据库(11)设计所述数据的存储策略; 52、所述第一分布式数据库(11)将所述数据复制到从数据集群(20)中的第二分布式数据库(21); 53、所述从数据集群(20)利用内部的分布式计算系统(22)对所述数据执行分布式计算算法; 54、所述分布式计算系统(22)将分布式的计算结果输出。2.如权利要求1所述的一种数据存储复制方法,其特征在于,步骤SI中的所述第一分布式数据库(11)设计所述数据的存储策略,具体步骤包括: SI 1、所述第一分布式数据库(11)将所述数据所存在的数据表的主键自动建立索引; S12、将用于查询的字段设置为所述数据表的主键,若所述字段不具备唯一性,则在所述字段上添加序列号。3.如权利要求2所述的一种数据存储复制方法,其特征在于,所述步骤S2中的数据复制具体包括以下步骤: 521、所述第一分布式数据库(11)向所述第二分布式数据库(21)发送数据写入日志,SP所述第一分布式数据库(11)向第二分布式数据库(21)写入数据的同时记录数据的操作和内容; 522、所述第二分布式数据库(21)根据数据写入日志写入数据。4.如权利要求3所述的一种数据存储复制方法,其特征在于:所述数据的复制采用主推送的架构模式。5.如权利要求1?4任一项所述的一种数据存储复制系统,其特征在于:本系统包括所述主数据集群(1)和所述从数据集群(20),其中, 主数据集群(10),所述主数据集群(10)的输入端接收所述前端传感器所采集到的数据; 从数据集群(20),用于对所述数据进行分布式计算,所述从数据集群(20)的输入端连接所述主数据集群(1)的输出端。6.如权利要求5所述的一种数据存储复制系统,其特征在于:所述主数据集群(10)包括第一分布式数据库(11),所述第一分布式数据库(11)的输出端连接从数据集群(20)的输入端。7.如权利要求6所述的一种数据存储复制系统,其特征在于:所述从数据集群(20)包括所述第二分布式数据库(21)和分布式计算系统(22),所述第二分布式数据库(21)的输入端连接第一分布式数据库(11)的输出端,第二分布式数据库(21)的输出端连接所述分布式计算系统(22)的输入端,分布式计算系统(22)的输出端输出分布式的计算结果至数据库中。8.如权利要求7所述的一种数据存储复制系统,其特征在于:所述第一分布式数据库(11)、第二分布式数据库(21)均为HBase分布式数据库。9.如权利要求7所述的一种数据存储复制系统,其特征在于:所述分布式计算系统(22)为MapReduce分布式计算系统。
【文档编号】G06F17/30GK106021574SQ201610379876
【公开日】2016年10月12日
【申请日】2016年5月27日
【发明人】周春寅, 余保华, 范联伟, 李铮, 胡兴, 吴磊, 李贤军, 徐圣吉, 张金国, 胡斌
【申请人】安徽四创电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1