CN110287185A - 面向文档键值数据库的一对多关系查询的存储结构及方法 - Google Patents
面向文档键值数据库的一对多关系查询的存储结构及方法 Download PDFInfo
- Publication number
- CN110287185A CN110287185A CN201910458529.0A CN201910458529A CN110287185A CN 110287185 A CN110287185 A CN 110287185A CN 201910458529 A CN201910458529 A CN 201910458529A CN 110287185 A CN110287185 A CN 110287185A
- Authority
- CN
- China
- Prior art keywords
- key
- many
- value database
- inquired
- oriented documents
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2291—User-Defined Types; Storage management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向文档键值数据库的一对多关系查询的存储结构及方法,存储结构由唯一标识符、列表主键、范围标识符、数据主键构成复合键,由该复合键作为主键,存储在面向文档键值数据库中;查询时,使用唯一标识符+列表主键+范围标识符的组合方式作为范围列表数据的查询参数,对符合最大前缀匹配的键进行范围查询,检索出所有以该复合键形式存储在数据库中的列表数据信息。本发明在数据的存储过程中添加复合键,实现了在面向文档数据库中的一对多关系的查询功能,大幅提高了查询效率。
Description
技术领域
本发明属于计算机数据库技术领域,特别是一种面向文档键值数据库的一对多关系查询的存储结构及方法。
背景技术
传统的数据库SQL语言是一种非过程化的面向集合的语言,虽然使用起来非常简单,但是由于是解释实现,效率不尽人意,因此许多应用仍然是由高级程序设计语言来实现的,但高级程序设计语言是过程化的,而且是面向单个数据的,这使得传统SQL语言和高级程序设计语言存在着不匹配,需要花很多功夫去完成两种语言之间的相互转化。
面向文档数据库使用存储对象所有信息的方法,允许创建许多不同类型的非结构化或任意格式的字段,解决了高级程序设计语言和数据库的无缝连接问题。但是面向文档数据库也有自己的缺点:模型较为复杂,缺乏数学基础,如权限管理等很多系统管理功能难以实现,也不具备SQL处理集合数据的强大能力,尤其不具备SQL的列表查询筛选数据的能力。
在面向文档的键值数据库中,由于经典的查询主键的方法需要调取出所有主键相关数据后再进行筛选,会导致查询的时间爆炸问题,而将要查询的列表信息作为主键存储又会使数据库冗余度大大增加,添加许多不必要的重复数据,导致数据库存储的空间爆炸问题。
发明内容
本发明的目的在于提供一种面向文档键值数据库的一对多关系查询的存储结构及方法。
实现本发明目的的技术方案为:一种面向文档键值数据库的一对多关系查询的存储结构,该存储结构由唯一标识符、列表主键、范围标识符、数据主键构成复合键,由该复合键作为主键,存储在面向文档键值数据库中。
一种面向文档键值数据库的一对多关系查询的存储方法,使用唯一标识符+列表主键+范围标识符+数据主键的组合方式生成所要查询数据的复合键,将复合键作为主键保存在面向文档键值数据库中。
与现有技术相比,本发明的显著优点为:本发明使用面向文档的键值数据库作为高级程序设计语言的存储数据库,使得程序设计语言和数据库之间能够得到更好的连接,并且使用复合键的存储结构将查询的范围关键词存入数据库中,通过在数据库中添加复合键这种新的存储结构的方式改善面向文档键值数据一对多关系查询的性能。
附图说明
图1是本发明复合键组成示意图。
图2是本发明在CouchDB数据库中的存储结构示意图。
图3是本发明在CouchDB数据库中的查询功能函数示意图。
具体实施方式
在面向文档的键值数据库中,由于经典的查询主键的方法需要调取出所有主键相关数据后再进行筛选,会导致查询的时间爆炸问题,而将要查询的列表信息作为主键存储又会使数据库冗余度大大增加,添加许多不必要的重复数据,导致数据库存储的空间爆炸问题,因此考虑在数据的存储过程中添加复合键,牺牲一部分存储空间换取高性能的查询效率。本发明通过唯一标识符+列表主键+范围标识符+数据主键的组合方式,将复合主键存储到面向文档的键值数据库中,通过最大前缀匹配查询方法,可以快速查询到所需的列表数据,改进面向文键值数据库列表查询一对多关系时的效率。
如图1所示,本发明的一种面向文档键值数据库的一对多关系查询的存储结构,该存储结构由唯一标识符、列表主键、范围标识符、数据主键构成复合键,由该复合键作为主键,存储在面向文档键值数据库中。
所述面向文档键值数据库是以文档为处理信息,以键值对为存储信息的数据库,包括MongoDB、Apache CouchDB、Terrastore、RavenDB、OrientDB、Thrudb、SisoDb、RaptorDB、CloudKit、Perservere、Apache Jackrabbit。
唯一标识符是数据库管理者给定的唯一前缀,用于标识复合键的身份,由字母、符号、数字组合而成。
所选取的列表主键是要查询的关键词,以字符串的形式存储。
范围标识符用于标识查询范围,由字母、符号、数字组合而成。
所添加的数据主键是数据对象的存储主键,由字母、符号、数字共同组成。
本发明还提供一种面向文档键值数据库的一对多关系查询的存储方法,使用唯一标识符+列表主键+范围标识符+数据主键的组合方式生成所要查询数据的复合键,将复合键作为主键保存在面向文档键值数据库中。
查询时,使用唯一标识符+列表主键+范围标识符的组合方式作为范围列表数据的查询参数,对符合最大前缀匹配的键进行范围查询,检索出所有以该复合键形式存储在数据库中的列表数据信息。
本发明核心思想是将复合键作为查询功能的对象,一个查询功能对应着一个功能复合键,当执行查询功能的时候只需要根据最大前缀匹配的键查询就可以从数据库中筛选出一对多关系的列表查询结构。
下面结合附图和实施例进一步阐明本发明。
实施例
一种面向文档键值数据库中的一对多关系查询的存储方法,包括:选取唯一标识符,范围标识符,将所需查询的列表主键和数据主键以唯一标识符+列表主键+范围标识符+数据主键的组合方式添加至CouchDB数据库中。在CouchDB中,范围查询可以用CouchDB自带的组合键功能,但是使用组合键需要预先进行建模,以支持针对多个参数的等价查询,会增加使用查询功能时的人工操作,所以将该发明应用于CouchDB中,在CouchDB数据库中添加复合键实现一对多关系的快速查询。在查询函数端,使用唯一标识符+列表主键+范围标识符的组合方式作为范围列表数据的查询参数,通过GetStateByRange函数对符合最大前缀匹配的键进行范围查询,检索出所有以该复合键形式存储在数据库中的列表数据信息。在查询用户端,用户只需在客户端使用列表主键作为关键词使用查询函数,便可以通过查询功能查询到所有的列表数据信息。
如图2、图3所示,在数据存储的时候,在couchDB数据库中添加了“P+info.PID+G+info.GID”的复合键结构。P是唯一标识符,是Producer的首字母,是生产公司的身份标识;info.PID是列表主键,表示所需查询的生产公司的名称;G是范围标识符,限定了查询的范围;info.GID是数据主键,存放所有需要查询的产品主键信息。
在查询过程中,根据GetStateByRange函数对“P+info.PID+G”进行最大前缀匹配查询,查询出所有以“P+info.PID+G+info.GID”复合键存储的产品信息,从而实现在面向文档键值数据库中的一对多关系查询。
Claims (10)
1.一种面向文档键值数据库的一对多关系查询的存储结构,其特征在于,该存储结构由唯一标识符、列表主键、范围标识符、数据主键构成复合键,由该复合键作为主键,存储在面向文档键值数据库中。
2.根据权利要求1所述的面向文档键值数据库的一对多关系查询的存储结构,其特征在于,所述面向文档键值数据库是以文档为处理信息,以键值对为存储信息的数据库,包括MongoDB、Apache CouchDB、Terrastore、RavenDB、OrientDB、Thrudb、SisoDb、RaptorDB、CloudKit、Perservere、Apache Jackrabbit。
3.根据权利要求1所述的面向文档键值数据库的一对多关系查询的存储结构,其特征在于,唯一标识符是数据库管理者给定的唯一前缀,用于标识复合键的身份,由字母、符号、数字组合而成。
4.根据权利要求1所述的面向文档键值数据库的一对多关系查询的存储结构,其特征在于,所选取的列表主键是要查询的关键词,以字符串的形式存储。
5.根据权利要求1所述的面向文档键值数据库的一对多关系查询的存储结构,其特征在于,范围标识符用于标识查询范围,由字母、符号、数字组合而成。
6.根据权利要求1所述的面向文档键值数据库的一对多关系查询的存储结构,其特征在于,所添加的数据主键是数据对象的存储主键,由字母、符号、数字共同组成。
7.一种面向文档键值数据库的一对多关系查询的存储方法,其特征在于,使用唯一标识符+列表主键+范围标识符+数据主键的组合方式生成所要查询数据的复合键,将复合键作为主键保存在面向文档键值数据库中。
8.根据权利要求7所述的面向文档键值数据库的一对多关系查询的存储方法,其特征在于,所述面向文档键值数据库是以文档为处理信息,以键值对为存储信息的数据库,包括MongoDB、Apache CouchDB、Terrastore、RavenDB、OrientDB、Thrudb、SisoDb、RaptorDB、CloudKit、Perservere、Apache Jackrabbit。
9.根据权利要求7所述的面向文档键值数据库的一对多关系查询的存储方法,其特征在于,唯一标识符是数据库管理者给定的唯一前缀,用于标识复合键的身份,由字母、符号、数字组合而成;列表主键是要查询的关键词,以字符串的形式存储。
10.根据权利要求7所述的面向文档键值数据库的一对多关系查询的存储方法,其特征在于,范围标识符用于标识查询范围,由字母、符号、数字组合而成;数据主键是数据对象的存储主键,由字母、符号、数字共同组成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910458529.0A CN110287185A (zh) | 2019-05-29 | 2019-05-29 | 面向文档键值数据库的一对多关系查询的存储结构及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910458529.0A CN110287185A (zh) | 2019-05-29 | 2019-05-29 | 面向文档键值数据库的一对多关系查询的存储结构及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110287185A true CN110287185A (zh) | 2019-09-27 |
Family
ID=68002838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910458529.0A Withdrawn CN110287185A (zh) | 2019-05-29 | 2019-05-29 | 面向文档键值数据库的一对多关系查询的存储结构及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287185A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111190929A (zh) * | 2019-12-27 | 2020-05-22 | 四川师范大学 | 数据存储查询方法、装置、电子设备及存储介质 |
CN112988737A (zh) * | 2019-12-16 | 2021-06-18 | 北京奇艺世纪科技有限公司 | 数据存储方法及装置、数据获取方法及装置、电子设备 |
-
2019
- 2019-05-29 CN CN201910458529.0A patent/CN110287185A/zh not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988737A (zh) * | 2019-12-16 | 2021-06-18 | 北京奇艺世纪科技有限公司 | 数据存储方法及装置、数据获取方法及装置、电子设备 |
CN112988737B (zh) * | 2019-12-16 | 2023-09-15 | 北京奇艺世纪科技有限公司 | 数据存储方法及装置、数据获取方法及装置、电子设备 |
CN111190929A (zh) * | 2019-12-27 | 2020-05-22 | 四川师范大学 | 数据存储查询方法、装置、电子设备及存储介质 |
CN111190929B (zh) * | 2019-12-27 | 2023-07-14 | 四川师范大学 | 数据存储查询方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kalampokis et al. | A classification scheme for open government data: towards linking decentralised data | |
Marden et al. | Linked open data for cultural heritage: evolution of an information technology | |
CN109977110A (zh) | 数据清洗方法、装置及设备 | |
CN101206670B (zh) | 用于将非结构化信息转换成内容的系统和方法 | |
CN106610927B (zh) | 一种基于翻译模板的互联网文章的建构方法与系统 | |
CN108319661A (zh) | 一种备件信息的结构化存储方法及装置 | |
Blanke et al. | Integrating holocaust research | |
CN106095964A (zh) | 一种对数据进行可视化归档与搜索的方法 | |
CN110287185A (zh) | 面向文档键值数据库的一对多关系查询的存储结构及方法 | |
Chang et al. | Experimenting with implementing FRBR in a Chinese Koha system | |
CN103177039A (zh) | 一种数据处理方法及装置 | |
CN106776717A (zh) | 一种基于HBase的接口构造方法及系统 | |
Maltese et al. | Foundations of digital universities | |
CN105184550B (zh) | 管理排期数据的方法、服务器及系统 | |
Blümel et al. | The quest for research information | |
Di Giorgio et al. | Dati. CulturaItalia: a Use Case of Publishing Linked Open Data Based on CIDOC-CRM. | |
CN107301208A (zh) | 一种数据表处理方法和装置 | |
CN105335503A (zh) | 数字化档案馆信息全功能系统 | |
Lemus-Rojas et al. | Using wikidata to provide visibility to women in STEM | |
Larson et al. | Integrating data mining and data management technologies for scholarly inquiry | |
Vasiljevs et al. | Eurotermbank: Towards greater interoperability of dispersed multilingual terminology data | |
Etaugh | Psychology of gender: History and development of the field | |
Stamm et al. | Doing succession in Europe: Generational transfers in family businesses in comparative perspective | |
Deng et al. | Enhance the Discovery and Interoperability of Culturally Rich Information: the Chinese Women Poets WikiProject | |
Stork et al. | A workflow for the semantic annotation of field books and specimen labels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190927 |
|
WW01 | Invention patent application withdrawn after publication |