CN103020262B - 一种数据存储方法、系统及数据存储设备 - Google Patents
一种数据存储方法、系统及数据存储设备 Download PDFInfo
- Publication number
- CN103020262B CN103020262B CN201210568374.4A CN201210568374A CN103020262B CN 103020262 B CN103020262 B CN 103020262B CN 201210568374 A CN201210568374 A CN 201210568374A CN 103020262 B CN103020262 B CN 103020262B
- Authority
- CN
- China
- Prior art keywords
- hash table
- field
- xml file
- data
- default
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明适用于数据存储技术领域,提供了一种数据存储方法、系统及数据存储设备,所述方法包括:获取待存储的数据;将所述数据解析至哈希表,所述哈希表包括至少一个键值对;根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。本发明使得数据库存储数据过程中如果需要变更数据模型,不需要重新编写代码,而只需要配置一下XML文件即可实现数据的存储,操作简单、方便,为项目的维护和修改节约成本。
Description
技术领域
本发明属于数据存储技术领域,尤其涉及一种数据存储方法、系统及数据存储设备。
背景技术
随着信息技术的不断发展,各种信息数据需要进行存储,对于海量的存储数据,目前流行的数据存储是用类似ORACLE(Oracle Database,甲骨文公司的一款关系数据库管理系统)或者MySQL(一种开放源代码的关系型数据库管理系统)的这种关系型数据库,关系型数据库都是严格的基于数据模型来进行存储的,例如,需要存储一个用户的几点信息,包括名字(name),年龄(age),身高(height),现有技术的数据存储方法首先建立数据库的模型,即建一个使用者表(user表),然后定义name,age,height这三个字段;然后针对这个user表来定义一个具体的数据库操作类UserDao,数据库操作类就是对user表进行增删改查的一些操作,而查询出来的user信息一般我们会用一个User的对象来存放,User的对象里面同样也是定义name,age,height这三个字段,完成了关系型数据库对数据的存储。
现有关系型数据库在数据存储过程中,需要对存储的数据建表、定义数据操作类、对象存放数据等过程编写相应的程序,以后一旦遇到需要变更数据模型的时候就必须重新写相应的程序代码。例如,在上述存储用户信息的例子中,如果需要新增一个用户的weight项,现有技术的做法只能是首先修改数据库的user表,然后修改代码中的User类,都分别添加weight这个字段,然后再修改操作类UserDao中的一个映射来完成对数据库的操作。
综上,现有技术的数据库存储数据过程中如果需要变更数据模型,需要重新编写相应的代码,操作步骤复杂,可用性差。
发明内容
本发明实施例的目的在于提供一种数据存储方法,旨在解决现有技术的数据库存储数据过程中如果需要变更数据模型,需要重新编写相应的代码,操作步骤复杂,可用性差的问题。
为了实现上述目的,本发明实施例提供如下技术方案:
本发明实施例是这样实现的,一种数据存储方法,所述方法包括:
获取待存储的数据;
将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;
将通过有效性检查、合法性检查及完整性检查的所述哈希表存储至数据库。
本发明实施例还提供了一种数据存储系统,所述系统包括:
获取单元,用于获取待存储的数据;
解析单元,用于将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
检查单元,用于根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;
存储单元,用于将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。
本发明实施例与现有技术相比,有益效果在于:通过将待存储的数据解析至哈希表,根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。使得数据库存储数据过程中如果需要变更数据模型,不需要重新编写代码,而只需要配置一下XML文件即可实现数据的存储,操作简单、方便,为项目的维护和修改节约成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的数据存储方法的实现的流程图;
图2是本发明实施例二提供的数据存储方法的实现的流程图;
图3是本发明实施例三提供的数据存储方法的实现的流程图;
图4是本发明实施例四提供的数据存储系统的结构图;
图5是本发明实施例五提供的数据存储系统的结构图;
图6是本发明实施例六提供的数据存储系统的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供了一种数据存储方法,所述方法包括:
获取待存储的数据;
将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
根据预设第一可扩展标记语言XML文件,检查所述哈希表中的字段的有效性;
根据预设第一XML文件,检查所述哈希表中每一字段的值对应的数据类型的合法性;
根据预设第二XML文件,检查所述哈希表中包括的字段的完整性;
将通过有效性检查、合法性检查及完整性检查的所述哈希表存储至数据库;
其中,所述预设第一XML文件中包括所有可以存储的字段的定义,所述预设第二XML文件中包括每个哈希表中必须包含的字段。
本发明实施例还提供了一种数据存储系统,所述系统包括:
获取单元,用于获取待存储的数据;
解析单元,用于将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
有效性检查单元,用于根据预设第一XML文件,检查所述哈希表中的字段的有效性,其中,所述预设第一XML文件中包括所有可以存储的字段的定义;
合法性检查单元,用于根据预设第一XML文件,检查所述哈希表中每一字段的值对应的数据类型的合法性;
完整性检查单元,用于根据预设第二XML文件,检查所述哈希表中包括的字段的完整性,其中,所述预设第二XML文件中包括每个哈希表中必须包含的字段;
存储单元,用于将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。
以下结合具体实施例对本发明的实现进行详细描述:
实施例一
图1示出了本发明实施例一提供的数据存储方法的实现的流程图,详述如下:
在S101中,获取待存储的数据;
在S102中,将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
在S103中,根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;
在S104中,将通过有效性检查、合法性检查及完整性检查的所述哈希表存储至数据库。
通过将待存储的数据解析至哈希表,根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。使得数据库存储数据过程中如果需要变更数据模型,不需要重新编写代码,而只需要配置一下XML文件即可实现数据的存储,操作简单、方便,为项目的维护和修改节约成本。
实施例二
图2示出了本发明实施例二提供的数据存储方法的实现的流程图,详述如下:
在S201中,获取待存储的数据。
在S202中,将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值。
本实施例中,待存储的数据可能是一个固定格式的字符串,也可能是一个javascript中的对象和数组(Java Script Object Notation,JSON)数据、也可能是一个Java类的数据,这些数据我们都将其解析成哈希表的方式,即《Key,Value》的键值对的方式。
对于现有技术的数据库存储方式,例如,如果要存储一个user表,需要定义name,age,height这三个字段,某用户的名字叫“张三”、年龄“20”、身高“170”,此时需要分别把张三,20,170等数据存到数据库的name,age,height这三个字段中,然而,如果是按《key,value》来理解就分别是:
key:name,value:张三;
key:age,value:20;
key:height,value:170。
在S203中,根据预设第一可扩展标记语言(Extensible Markup Language,XML)文件,检查所述哈希表中的字段的有效性。
本实施例中,所述有效性检查即通过判断所述哈希表中的字段是否是所述预设第一XML文件中定义的字段,若是,则所述字段为有效的字段,若否,所述字段无效。
在S204中,根据预设第一XML文件,检查所述哈希表中每一字段的值对应的数据类型的合法性。
其中,所述预设第一XML文件中包括所有可以存储的字段的定义,包括字段的名称及字段的值的数据类型,以下给出一个预设第一XML文件的示例,但不以此示例的情况为限,所述预设第一XML文件如下:
其中,column_name定义的就是键(Key)名,type就是这个键对应的值(Value)的数据类型,description就是对这个键的含义的描述。
在S205中,根据预设第二XML文件,检查所述哈希表中包括的字段的完整性。
其中,所述预设第二XML文件中包括每个哈希表中必须包含的字段。
本实施例中,所述S203至S205的顺序可以根据实际情况的需要进行灵活调整,本实施例中的情况仅是可以执行的一种顺序,但不以本实施例的情况为限。
在S206中,将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。
优选的,所述数据存储方法可以应用于非关系型的数据库(No-SQL的数据库)中,由于No-SQL的数据库具有不严格限制模型的特点,便于对不同的XML文件进行配置。
以下以一个具体示例对本实施例的数据存储过程进行说明,但不以本实现示例的情况为限:以存储用户信息为例,开始存储了name,age,height字段,这时需要在预设第一XML文件、预设第二XML文件中定义这三个字段,并且在哈希表中通过键值对定义所述三个字段,所述哈希表具体为:
key:name,value:张三;
key:age,value:20;
key:height,value:170;
这样张三的信息就存到数据库了。
如果还需要存储用户的体重(weight)为65的信息,只需要在预设的第一XML文件及预设的第二XML文件中增加一个weight字段的定义,并且在哈希表中添加一条key:weight,value:65的键值对数据即可。此时,用户的体重信息就可以存到数据库中了,而不需要修改任何的代码。
本实施例中,通过将待存储的数据解析至哈希表,根据预设第一XML文件,检查所述哈希表中的字段的有效性,并检查所述哈希表中每一字段的值对应的数据类型的合法性,根据预设第二XML文件,检查哈希表中包括的字段的完整性,将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。数据库存储数据过程中如果需要变更数据模型,不需要重新编写代码,而只需要配置一下XML文件即可实现数据的存储,操作简单、方便,为项目的维护和修改节约成本。
实施例三
图3示出了本发明实施例三提供的数据存储方法的实现的流程图,详述如下:
在S301中,获取待存储的数据。
在S302中,将所述数据解析至哈希表,所述哈希表包括至少一键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值。
其中,步骤S301-302的具体实施过程和上述实施例一中的步骤S201-202相同,详情参见上述实施例一,在此不再赘述。
在S303中,判断所述哈希表中的字段是否是所述预设第一XML文件中定义的字段,若是,则所述字段为有效的字段,若否,执行S307。
本实施例中,具体可以将要存储的数据的哈希表中的字段与预设第一XML文件中定义的字段逐一进行匹配,如果哈希表中含有第一XML中没有定义的字段,即预设第一XML文件中找不到匹配项,则所述字段为无效的字段,如果哈希表中的所有字段都在第一XML中有定义,则所述哈希表的字段都为有效的字段。
本实施例中,在字段全部通过有效性检查,或者删除所述无效的字段对应的键值对之后,执行S304。
在S304中,判断是否能将哈希表中每一字段的值的数据类型转换成所述预设第一XML文件定义的所述字段的数据类型,若是,则所述字段的值对应的数据类型为合法的数据类型,若否,执行S307。
本实施例中,检查所述数据类型是否正确,检查的标准就是所述预设第一XML文件中定义字段的类型,哈希表中所有字段的数据类型都可以看成是字符串的形式,因为从XML文件中传送下来的所有的数据都是字符串的形式,因此,在检查过程中,需要将哈希表中每一字段的字符串的数据类型强制转换成预设第一XML文件中定义的所述字段的数据类型。如果转换成功,则所述字段的值的数据类型是正确的,如果转换失败,则所述字段的值的数据类型是错误的。
本实施例中,在字段的值的数据类型全部通过合法性检查的哈希表,或者删除所述不合法的字段对应的键值对后,执行S305。
在S305中,判断哈希表中的字段是否包含所述预设第二XML文件中定义的所有字段,若是,则所述哈希表中的字段是完整的,若否,执行S307。
本实施例中,对于不同的数据来说并非所有预设第一XML中定义的字段都是需要的,有些是可选的,而只有几个字段是必须的,因此配置预设第二XML文件,所述预设第二XML文件包括每个哈希表中必须包含的字段。
本实施例中,所述S303至S305的顺序可以根据实际情况的需要进行灵活调整,本实施例中的情况仅是可以执行的一种顺序,但不以本实施例的情况为限。
以下给出一个预设第二XML文件的示例,但不以此示例的情况为限:假设10表示存储的用户的信息,对于用户的信息来说必须要包含的字段信息有用户名和用户的年龄,所述预设第二XML文件如下:
此处按不同的actiontype进行定义,即对于不同的actiontype,必须存在的字段用item项列出。
本实施例中,当判断哈希表中包含预设第二XML文件中定义的所有必须字段,那么就表示这条数据是完整的,就将该条数据存入数据库,即执行S306,如果哈希表中并未包含预设预设第二XML文件中定义的所有必须的字段,那么该数据就是无意义的数据,因此删除数据对应的哈希表。
在S303至S305中,当未通过有效性检查、合法性检查或完整性检查,可以选择删除哈希表所述字段对应的键值对,或者选择删除哈希表,用户可以根据需要选择删除键值对或者哈希表。其中,删除键值对对应的数据,仍然可以保留其它的键值对。因此,当对数据完整性要求不严格时,可以采用删除键值对的方式,而如果删除哈希表的数据,则全部的数据都被删除,因此,当数据完整性要求较高时,可以采用删除哈希表的方式。
在S306中,将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。
在S307中,删除哈希表中所述字段对应的键值对或者删除所述哈希表,记录所述删除哈希表中所述字段对应的键值对的信息到数据库或者记录所述删除哈希表的信息到数据库。
本实施例中,具体可以在删除哈希表中所述字段对应的键值对时,记录所述删除哈希表中所述字段对应的键值对的信息到数据库,或者删除所述哈希表时记录所述删除哈希表的信息到数据库。在后续接收到用户调用所述信息的指令时,输出显示所述信息,方便用户可以随时查询数据的历史情况,使得数据具有可追溯性。
本实施例中,通过所述预设第一XML文件中定义的字段、字段的数据类型判断所述哈希表中的字段的有效性及字段的值的合法性,通过所述预设第二XML文件,判断判断哈希表中的字段的完整性,使得数据库存储数据过程中如果需要变更数据模型,不需要重新编写代码,而只需要配置一下XML文件即可实现数据的存储,操作简单、方便,为项目的维护和修改节约成本。
实施例四
图4示出了本发明实施例四提供的数据存储系统的结构图,为了便于说明,仅示出了与本发明实施例相关的部分,该装置可以是内置于数据存储装置中的软件单元、硬件单元或者软硬结合单元。
所述系统包括:获取单元41、解析单元42、检查单元43及存储单元44。
获取单元41,用于获取待存储的数据;
解析单元42,用于将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
检查单元43,用于根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;
存储单元44,用于将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。
本发明实施例提供的数据存储系统可以使用在前述对应的方法实施例一中,详情参见上述实施例一的描述,在此不再赘述。
实施例五
图5示出了本发明实施例五提供的数据存储系统的结构图,为了便于说明,仅示出了与本发明实施例相关的部分,该装置可以是内置于数据存储装置中的软件单元、硬件单元或者软硬结合单元。
所述系统包括:获取单元51、解析单元52、检查单元53以及存储单元54。
本实施例与实施例三的区别在于:
所述检查单元53包括:有效性检查模块531、合法性检查模块532以及完整性检查模块533。
有效性检查模块531,用于根据预设第一XML文件,检查所述哈希表中的字段的有效性,其中,所述预设第一XML文件中包括所有可以存储的字段的定义;
合法性检查模块532,用于根据预设第一XML文件,检查所述哈希表中每一字段的值对应的数据类型的合法性;
完整性检查模块533,用于根据预设第二XML文件,检查所述哈希表中包括的字段的完整性,其中,所述预设第二XML文件包括每个哈希表中必须包含的字段;
本发明实施例提供的数据存储系统可以使用在前述对应的方法实施例二中,详情参见上述实施例二的描述,在此不再赘述。
实施例六
图6示出了本发明实施例六提供的数据存储系统的结构图,为了便于说明,仅示出了与本发明实施例相关的部分,该装置可以是内置于数据存储设备中的软件单元、硬件单元或者软硬结合单元。
所述系统包括:获取单元61、解析单元62、检查单元63、存储单元64及记录单元65。
本实施例与实施例三的区别在于:
所述有效性检查模块631,具体用于判断所述哈希表中的字段是否是所述预设第一XML文件中定义的字段,若是,则所述字段为有效的字段,若否,则删除哈希表中所述字段对应的键值对或者删除所述哈希表。
所述合法性检查模块632,具体用于判断是否能将哈希表中每一字段的值对应的数据类型转换成所述预设第一XML文件定义的所述字段的数据类型,若是,则所述字段的值对应的数据类型为合法的数据类型,若否,则删除哈希表中所述字段对应的键值对或者删除所述哈希表。
所述完整性检查模块633,具体用于判断哈希表中的字段是否包含所述预设第二XML文件中定义的字段,若是,则所述哈希表中的字段是完整的,若否,则删除所述哈希表。
可选的,记录单元65,用于记录并存储所述删除哈希表所述字段对应的键值对的信息或者记录所述删除哈希表的信息。
本发明实施例提供的数据存储系统可以使用在前述对应的方法实施例三中,详情参见上述实施例三的描述,在此不再赘述。
值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种数据存储方法,其特征在于,所述方法包括:
获取待存储的数据;
将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;
将通过有效性检查、合法性检查及完整性检查的所述哈希表存储至数据库。
2.如权利要求1所述的方法,其特征在于,所述根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性具体为:
根据预设第一XML文件,检查所述哈希表中的字段的有效性;
根据预设第一XML文件,检查所述哈希表中每一字段的值对应的数据类型的合法性;
根据预设第二XML文件,检查所述哈希表中包括的字段的完整性;
其中,所述预设第一XML文件中包括所有可以存储的字段的定义,所述预设第二XML文件中包括每个哈希表中必须包含的字段。
3.如权利要求2所述的方法,其特征在于,所述根据预设第一XML文件,检查所述哈希表中的字段的有效性具体为:
判断所述哈希表中的字段是否是所述预设第一XML文件中定义的字段,若是,则所述字段为有效的字段,若否,则删除哈希表中所述字段对应的键值对或者删除所述哈希表。
4.如权利要求2所述的方法,其特征在于,所述根据预设第一XML文件,检查所述哈希表中的字段的有效性具体为:
判断是否能将哈希表中每一字段的值对应的数据类型转换成所述预设第一XML文件定义的所述字段的数据类型,若是,则所述字段的值对应的数据类型为合法的数据类型,若否,则删除哈希表中所述字段对应的键值对或者删除所述哈希表。
5.如权利要求2所述的方法,其特征在于,所述根据预设第二XML文件,检查哈希表中包括的字段的完整性具体为:
判断哈希表中的字段是否包含所述预设第二XML文件中定义的所有字段,若是,则所述哈希表中的字段是完整的,若否,则删除所述哈希表。
6.如权利要求3至5任一权利要求所述的方法,其特征在于,所述方法还包括:
记录删除哈希表中所述字段对应的键值对的信息或者记录所述删除哈希表的信息。
7.一种数据存储系统,其特征在于,所述系统包括:
获取单元,用于获取待存储的数据;
解析单元,用于将所述数据解析至哈希表,所述哈希表包括至少一个键值对,其中,键表示待存储数据中的一个字段,值表示所述字段对应的数据值;
检查单元,用于根据预设可扩展标记语言XML文件,分别检查所述哈希表中的字段的有效性、合法性和完整性,其中,所述预设XML文件中包括所有可以存储的字段的定义,以及每个哈希表中必须包含的字段;
存储单元,用于将通过有效性检查、合法性检查及完整性检查的哈希表存储至数据库。
8.如权利要求7所述的系统,其特征在于,所述检查单元包括:
有效性检查模块,用于根据预设第一XML文件,检查所述哈希表中的字段的有效性,其中,所述预设第一XML文件中包括所有可以存储的字段的定义;
合法性检查模块,用于根据预设第一XML文件,检查所述哈希表中每一字段的值对应的数据类型的合法性;
完整性检查模块,用于根据预设第二XML文件,检查所述哈希表中包括的字段的完整性,其中,所述预设第二XML文件中包括每个哈希表中必须包含的字段。
9.如权利要求8所述的系统,其特征在于,所述有效性检查模块,具体用于判断所述哈希表中的字段是否是所述预设第一XML文件中定义的字段,若是,则所述字段为有效的字段,若否,则删除哈希表中所述字段对应的键值对或者删除所述哈希表。
10.如权利要求8所述的系统,其特征在于,所述合法性检查模块,具体用于判断是否能将哈希表中每一字段的值对应的数据类型转换成所述预设第一XML文件定义的所述字段的数据类型,若是,则所述字段的值对应的数据类型为合法的数据类型,若否,则删除哈希表中所述字段对应的键值对或者删除所述哈希表。
11.如权利要求8所述的系统,其特征在于,所述完整性检查模块,具体用于判断哈希表中的字段是否包含所述预设第二XML文件中定义的所有字段,若是,则所述哈希表中的字段是完整的,若否,则删除所述哈希表。
12.如权利要求9至11任一权利要求所述的系统,其特征在于,所述系统还包括:
记录单元,用于记录删除哈希表中所述字段对应的键值对的信息或者记录所述删除哈希表的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210568374.4A CN103020262B (zh) | 2012-12-24 | 2012-12-24 | 一种数据存储方法、系统及数据存储设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210568374.4A CN103020262B (zh) | 2012-12-24 | 2012-12-24 | 一种数据存储方法、系统及数据存储设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103020262A CN103020262A (zh) | 2013-04-03 |
CN103020262B true CN103020262B (zh) | 2017-04-19 |
Family
ID=47968865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210568374.4A Active CN103020262B (zh) | 2012-12-24 | 2012-12-24 | 一种数据存储方法、系统及数据存储设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103020262B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104184822A (zh) * | 2014-08-29 | 2014-12-03 | 海视云(北京)科技有限公司 | 一种数据同步的方法及系统 |
CN108491218B (zh) * | 2018-03-12 | 2021-09-14 | 浙江中控技术股份有限公司 | 一种数据库变更文件生成的方法和装置 |
CN109062560B (zh) * | 2018-07-25 | 2022-05-20 | 北京百度网讯科技有限公司 | 用于生成信息的方法和装置 |
CN110928483B (zh) * | 2018-09-19 | 2021-04-09 | 华为技术有限公司 | 数据存储、数据获取方法及设备 |
CN109684350A (zh) * | 2018-12-15 | 2019-04-26 | 平安证券股份有限公司 | 证券登记数据核对方法、装置、计算机设备及存储介质 |
CN110188160B (zh) * | 2019-05-31 | 2021-10-22 | 联想(北京)有限公司 | 数据存储方法和数据读取方法 |
CN110297946A (zh) * | 2019-07-17 | 2019-10-01 | 哈尔滨工业大学 | 一种海量不确定xml数据存储方法 |
CN110445811A (zh) * | 2019-09-16 | 2019-11-12 | 秒针信息技术有限公司 | 用于非云存储的数据管理系统、方法、服务器和存储介质 |
CN111159110A (zh) * | 2019-12-03 | 2020-05-15 | 深圳市智微智能软件开发有限公司 | 资料建立方法及系统 |
CN111651372A (zh) * | 2020-05-13 | 2020-09-11 | 湖北三江航天万峰科技发展有限公司 | 一种基于哈希查找的Flash检索方法及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102640144A (zh) * | 2009-09-15 | 2012-08-15 | 美国结构数据有限公司 | 协同操作数据的方法和系统 |
CN102760166A (zh) * | 2012-06-12 | 2012-10-31 | 上海方正数字出版技术有限公司 | 一种支持多语言的xml数据库全文检索方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7228312B2 (en) * | 2004-03-09 | 2007-06-05 | Microsoft Corporation | Transformation tool for mapping XML to relational database |
US8010899B2 (en) * | 2005-11-29 | 2011-08-30 | Our Tech Co., Ltd. | System offering a data-skin based on standard schema and the method |
US20090182703A1 (en) * | 2008-01-16 | 2009-07-16 | Microsoft Corporation | Exposing relational database interfaces on xml data |
-
2012
- 2012-12-24 CN CN201210568374.4A patent/CN103020262B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102640144A (zh) * | 2009-09-15 | 2012-08-15 | 美国结构数据有限公司 | 协同操作数据的方法和系统 |
CN102760166A (zh) * | 2012-06-12 | 2012-10-31 | 上海方正数字出版技术有限公司 | 一种支持多语言的xml数据库全文检索方法 |
Non-Patent Citations (2)
Title |
---|
使用架构(XSD)验证XML文件;陈希章;《http://www.cnblogs.com/chenxizhang/archive/2009/06/19/1507121.html》;20090619;第1页第70-81行,第2页1-54行 * |
把哈希表存储到数据库中;zjysky;《http://zjysky.blog.hexun.com/23512426_d.html》;20080924;第1页第1-4行,第1页第40-45行,第2页第1-2行 * |
Also Published As
Publication number | Publication date |
---|---|
CN103020262A (zh) | 2013-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103020262B (zh) | 一种数据存储方法、系统及数据存储设备 | |
US9904694B2 (en) | NoSQL relational database (RDB) data movement | |
Li | Transforming relational database into HBase: A case study | |
US8935575B2 (en) | Test data generation | |
US8037108B1 (en) | Conversion of relational databases into triplestores | |
US8954480B2 (en) | End-to-end interoperability and workflows from building architecture design to one or more simulations | |
US20160055233A1 (en) | Pre-join tags for entity-relationship modeling of databases | |
US9710529B2 (en) | Data construction for extract, transform and load operations for a database | |
Frühwirt et al. | Innodb database forensics: Reconstructing data manipulation queries from redo logs | |
US20110055147A1 (en) | Generating extract, transform, and load (etl) jobs for loading data incrementally | |
US8516011B2 (en) | Generating data models | |
Rith et al. | Speaking in tongues: SQL access to NoSQL systems | |
CN104216894A (zh) | 用于数据查询的方法和系统 | |
US9569485B2 (en) | Optimizing database query | |
CN104679903B (zh) | 一种数据表的操作方法及装置 | |
Frühwirt et al. | InnoDB database forensics: Enhanced reconstruction of data manipulation queries from redo logs | |
US20230315619A1 (en) | Lineage-driven source code generation for building, testing, deploying, and maintaining data marts and data pipelines | |
CN101499063A (zh) | 基于跟踪的数据库模式演进方法及系统 | |
WO2021093462A1 (zh) | 一种数据库中的操作记录存储方法、装置及设备 | |
US9613067B2 (en) | Defining and transforming entity relationship-XML hybrid data models | |
US11176314B2 (en) | XML schema description code generator | |
US9280582B2 (en) | Optimization of join queries for related data | |
CN102456023A (zh) | 一种查找用户信息的方法及系统 | |
CN113448942B (zh) | 数据库访问方法、装置、设备及存储介质 | |
CN111427902A (zh) | 基于轻量型数据库的元数据管理方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |