数据存储方法及系统的制作方法

文档序号:6641039阅读:148来源:国知局
数据存储方法及系统的制作方法
【专利摘要】本发明适用于数据处理【技术领域】,提供了一种数据存储方法及系统,所述方法包括:获取待存储的数据,并将所述数据存储至非关系型数据库;按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。本发明降低了安防数据的存储成本,提高了安防数据的存储安全性,以及提高了对安防数据进行数据挖掘、数据查询的效率。
【专利说明】数据存储方法及系统

【技术领域】
[0001]本发明属于数据处理【技术领域】,尤其涉及数据存储方法及系统。

【背景技术】
[0002]安防行业在城市的建设中越来越重要。大量的智能化安防设施的应用,所产生的非结构化的安防数据也以几何倍数增长。然而,目前大部分安防数据均存储在关系型数据库中,其存储成本高,且数据挖掘、数据查询等操作不灵活。


【发明内容】

[0003]鉴于此,本发明实施例提供一种数据存储方法及系统,以解决现有的安防数据急剧增多导致的存储成本高、数据利用率低的问题。
[0004]第一方面,提供了一种数据存储方法,所述方法包括:
[0005]获取待存储的数据,并将所述数据存储至非关系型数据库;
[0006]按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;
[0007]根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。
[0008]进一步地,所述非关系型数据库包括多个子节点,所述获取待存储的数据,并将所述数据存储至非关系型数据库之后还包括:
[0009]备份所述数据至非关系型数据库的不同子节点中。
[0010]进一步地,所述根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库包括:
[0011]根据所述关键字建立所述数据在不同子节点上对应的索引;
[0012]对所述索引进行格式化,以使得格式化后的索引符合预设的格式规范;
[0013]将所述关键字和格式化后的索引存储至关系型数据库。
[0014]进一步地,在根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库之后,所述方法还包括:
[0015]根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引;
[0016]根据所述索引从非关系型数据库中查找与所述关键字相关的数据。
[0017]进一步地,所述关键字对应的索引包括至少一个非关系型数据库子节点对应的索弓I,所述根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引之后还包括:
[0018]获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。
[0019]第二方面,提供了一种数据存储系统,所述系统包括:
[0020]第一存储模块,用于获取待存储的数据,并将所述数据存储至非关系型数据库;
[0021]处理模块,用于按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;
[0022]第二存储模块,用于根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。
[0023]进一步地,所述非关系型数据库包括多个子节点,所述第一存储模块还用于:
[0024]在将所述数据存储至非关系型数据库之后,备份所述数据至非关系型数据库的不同子节点中。
[0025]进一步地,所述第二存储模块包括:
[0026]建立单元,用于根据所述关键字建立所述数据在不同子节点上对应的索引;
[0027]格式化模块,用于对所述索引进行格式化,以使得格式化后的索引符合预设的格式规范;
[0028]存储单元,用于将所述关键字和格式化后的索引存储至关系型数据库。
[0029]进一步地,所述系统还包括:
[0030]查找模块,用于根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引,根据所述索引从非关系型数据库中查找与所述关键字相关的数据。
[0031]进一步地,所述关键字对应的索引包括至少一个非关系型数据库子节点对应的索弓丨,所述系统还包括:
[0032]显示模块,用于获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。
[0033]与现有技术相比,本发明实施例获取待存储的数据,并将所述数据存储至非关系型数据库;按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库;从而通过非关系型数据库存储急剧增长的安防数据来降低了数据存储的成本,以及提高了安防数据的存储安全性;并通过关系型数据库存储关键字及索引来提高了数据挖掘、数据查询的效率。

【专利附图】

【附图说明】
[0034]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0035]图1是本发明实施例一提供的数据存储方法的实现流程图;
[0036]图2是本发明实施例一提供的索引列表结构不意图;
[0037]图3是本发明实施例二提供的数据存储系统的组成结构图。

【具体实施方式】
[0038]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0039]本发明实施例在获取到待存储的数据后,将所述数据存储至非关系型数据库;并按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库;从而通过非关系型数据库存储急剧增长的安防数据来降低了数据存储的成本,并且提高了安防数据的存储安全性,以及通过关系型数据库存储关键字及索引来提高了数据挖掘、数据查询的效率。本发明实施例还提供了对应的系统,以下分别进行详细的说明。
[0040]实施例一
[0041]图1示出了本发明实施例一提供的数据存储方法的第一实现流程,为了便于说明,仅示出了与本发明相关的部分。
[0042]在本发明实施例中,所述方法用于实现对海量安防数据的存储,包括:
[0043]在步骤SlOl中,获取待存储的数据,并将所述数据存储至非关系型数据库。
[0044]在本发明实施例中,所述非关系型数据库为HBase。所述HBase是一个分布式的、面向列的开源数据库,适用于存储非结构化数据,包括但不限于全文文本、图像、声音、影视、超媒体等信息。所述待存储的数据为安防数据,包括但不限于视频、图像、音频等安防监控信息。通过将急剧增长的安防数据存储到非关系型数据库中,降低了数据存储的成本。
[0045]优选地,所述非关系型数据库HBase包括多个子节点;本发明实施例在将待存储的数据保存至非关系型数据库HBase之后,通过HBase自动对所述数据进行备份,并且备份数据在两份及以上,即将数据存储在非关系型数据库HBase的两个及以上个不同子节点中,所述子节点可位于不同的设备、子服务器上,从而提高了数据存储的安全性。
[0046]在步骤S102中,按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字。
[0047]本发明实施例按照预设的时间间隔定期对非关系型数据库中的数据进行数据挖掘,以查找主要关键字或者获取其他有效信息。其中,所述数据挖掘优选采用YARN技术。优选地,本发明实施例还可通过手工录入敏感词汇等方式获取关键字。
[0048]在步骤S103中,根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。
[0049]对每次数据挖掘之后获得的关键字或者手工录入的关键字建立索引,所述索引指示了与所述关键字相关的数据在分布式系统(即非关系型数据库)中的存储位置,即指明了所述数据存储在非关系型数据库的哪些子节点上。
[0050]优选地,由于本发明实施例通过HBase对所存储的数据备份两份及以上,因此,根据同一关键字建立的索引可能有多个,步骤S103具体包括:根据所述关键字建立所述数据在不同子节点上对应的索引;对所述索引进行格式化,以使得格式化后的索引符合预设的格式规范;将所述关键字和格式化后的索引存储至关系型数据库。
[0051]在本发明实施例中,通过将关键字以及格式化后的索引等信息存储在关系型数据库中,提高了数据查询、数据挖掘的效率。
[0052]优选地,本发明实施例还提供了与所述数据存储方法对应的调用过程,包括:
[0053]a.根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引。
[0054]b.根据所述索引从非关系型数据库中查找与所述关键字相关的数据。
[0055]由于数据存储在非关系型数据库中,并且备份了两份及以上,一个关键字对应的数据的存储位置不少于两个,即关键字对应多个不同子节点的索引。在获取到与所述关键字对应的不同子节点的索引后,获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述不同子节点与当前进行查找的设备或子节点的距离远近,以确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。在本发明实施例中,所述优先级反应了从子节点读取数据信息的速率。其中,从距离越近的子节点读取数据信息的速率越高,因此,距离越近的子节点对应的索引优先级越高,本发明实施例优选以列表的方式显示根据关键字获取到的索引,而优先级较高的索引显示在列表的靠前(或者靠左)的位置上,优先级较低的索引则显示在列表的靠后(或者靠右)的位置上,以实现不同优先级的索引以最佳的读取位置排序及显示。优选地,图2给出了本发明实施例一提供的索引列表结构示意图。其中,关键字为“key”,优先级最高的索引显示在FIRST_URL_LOCAT1N的位置上,优先级次之的索引显示在SECOND_URL_LOCAT1N的位置上,依次类推。
[0056]优选地,在根据索引从不同子节点上获取到与关键字相关的数据后,同样根据不同子节点的优先级,排序显示与所述关键字相关的数据。
[0057]在本发明实施例中,通过获取待存储的数据,将所述数据存储至非关系型数据库;按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库中;从而实现了以非关系型数据库存储急剧增长的安防数据,降低了安防数据的存储成本以及提高了安防数据的存储安全性,并以关系型数据库存储关键字及索引来提高了数据挖掘、数据查询的效率。
[0058]实施例二
[0059]图3示出了本发明实施例二提供的数据存储系统的组成结构,为了便于说明,仅不出了与本发明相关的部分。
[0060]如图3所示,所述系统包括:
[0061]第一存储模块31,用于获取待存储的数据,并将所述数据存储至非关系型数据库。
[0062]处理模块32,用于按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字。
[0063]第二存储模块33,用于根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。
[0064]进一步地,所述非关系型数据库包括多个子节点,所述第一存储模块31还用于:
[0065]在将所述数据存储至非关系型数据库之后,备份所述数据至非关系型数据库的不同子节点中。
[0066]优选地,本发明实施例将待存储的数据存储至非关系型数据库HBase中,并通过所述HBase备份至不同的子节点上,降低了急剧增长的安防数据的存储成本,并且提高了数据存储的安全性。
[0067]进一步地,所述第二存储模块33还包括:
[0068]建立单元331,用于根据所述关键字建立所述数据在不同子节点上对应的索引。
[0069]格式化模块332,用于对所述索引进行格式化,以使得格式化后的索引符合预设的格式规范。
[0070]存储单元333,用于将所述关键字和格式化后的索引存储至关系型数据库。
[0071]优选地,本发明实施例还提供了调用所存储的数据的功能。因此,所述系统还包括:
[0072]查找模块34,用于根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引,根据所述索引从非关系型数据库中查找与所述关键字相关的数据。
[0073]其中,所述关键字对应的索引包括至少一个非关系型数据库子节点对应的索引,所述系统还包括:
[0074]显示模块35,用于获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。
[0075]由于数据存储在非关系型数据库中,并且备份了两份及以上,一个关键字对应的数据的存储位置不少于两个,即关键字对应多个不同子节点的索引。在获取到与所述关键字对应的不同子节点的索引后,获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述不同子节点与当前进行查找的设备或子节点的距离远近,以确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。在本发明实施例中,所述优先级反应了从子节点读取数据的速率。其中,从距离越近的子节点读取数据的速率越高,因此,距离越近的子节点对应的索引优先级越高,本发明实施例优选以列表的方式显示根据关键字获取到的索引,而优先级较高的索引显示在列表的靠前(或者靠左)的位置上,优先级较低的索引则显示在列表的靠后(或者靠右)的位置上,以实现不同优先级的索引以最佳的读取位置排序及显示。
[0076]优选地,在根据索引从不同子节点获取到与关键字相关的数据后,同样根据所述关键字对应的索引的优先级,排序显示与所述关键字相关的数据。
[0077]需要说明的是,本发明实施例中的系统可以用于实现上述方法实施例中的全部技术方案,其各个功能模块的功能可以根据上述方法实施例中的方法具体实现,其具体实现过程可参照上述实施例中的相关描述,此处不再赘述。
[0078]在本发明实施例中,通过获取待存储的数据,将所述数据存储至非关系型数据库;按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字;根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库中;从而实现了以非关系型数据库存储急剧增长的安防数据,降低了安防数据的存储成本以及提高了安防数据的存储安全性,并以关系型数据库存储关键字及索引来提高了数据挖掘、数据查询的效率。
[0079]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能宄竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0080]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0081]在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统、装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0082]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0083]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0084]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0085]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【权利要求】
1.一种数据存储方法,其特征在于,所述方法包括: 获取待存储的数据,并将所述数据存储至非关系型数据库; 按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字; 根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。
2.如权利要求1所述的数据存储方法,其特征在于,所述非关系型数据库包括多个子节点,所述获取待存储的数据,并将所述数据存储至非关系型数据库之后还包括: 备份所述数据至非关系型数据库的不同子节点中。
3.如权利要求2所述的数据存储方法,其特征在于,所述根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库包括: 根据所述关键字建立所述数据在不同子节点上对应的索引; 对所述索引进行格式化,以使得格式化后的索引符合预设的格式规范; 将所述关键字和格式化后的索引存储至关系型数据库。
4.如权利要求1至3任一项所述的数据存储方法,其特征在于,在根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库之后,所述方法还包括: 根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引; 根据所述索引从非关系型数据库中查找与所述关键字相关的数据。
5.如权利要求4所述的数据存储方法,其特征在于,所述关键字对应的索引包括至少一个非关系型数据库子节点对应的索引,所述根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引之后还包括: 获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。
6.一种数据存储系统,其特征在于,所述系统包括: 第一存储模块,用于获取待存储的数据,并将所述数据存储至非关系型数据库; 处理模块,用于按照预设的时间间隔对所述非关系型数据库中的数据进行数据挖掘,以获得所述数据的关键字; 第二存储模块,用于根据所述关键字建立所述数据的索引,并将所述关键字和索引存储至关系型数据库。
7.如权利要求6所述的数据存储系统,其特征在于,所述非关系型数据库包括多个子节点,所述第一存储模块还用于: 在将所述数据存储至非关系型数据库之后,备份所述数据至非关系型数据库的不同子节点中。
8.如权利要求6所述的数据存储系统,其特征在于,所述第二存储模块包括: 建立单元,用于根据所述关键字建立所述数据在不同子节点上对应的索引; 格式化模块,用于对所述索引进行格式化,以使得格式化后的索引符合预设的格式规范; 存储单元,用于将所述关键字和格式化后的索引存储至关系型数据库。
9.如权利要求6至8任一项所述的数据存储系统,其特征在于,所述系统还包括: 查找模块,用于根据用户输入的关键字,从关系型数据库中获取与所述关键字对应的索引,根据所述索引从非关系型数据库中查找与所述关键字相关的数据。
10.如权利要求9所述的数据存储系统,其特征在于,所述关键字对应的索引包括至少一个非关系型数据库子节点对应的索引,所述系统还包括: 显示模块,用于获取关系型数据库中不同子节点的IP地址,根据所述IP地址确定所述关键字对应的索引的优先级,按照所述优先级显示所述关键字对应的索引。
【文档编号】G06F17/30GK104504137SQ201410856398
【公开日】2015年4月8日 申请日期:2014年12月31日 优先权日:2014年12月31日
【发明者】唐健, 陈毅林, 张宇 申请人:深圳市科漫达智能管理科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1