NoSQL数据库多表特性的实现方法及系统的制作方法

文档序号:6534737阅读:334来源:国知局
NoSQL数据库多表特性的实现方法及系统的制作方法
【专利摘要】本发明涉及数据库【技术领域】,公开了一种NoSQL数据库多表特性的实现方法和系统,通过在NoSQL数据库的基础之上将数据库的接口进行封装优化,提供给用户一个包含表的数据库接口,包括同步、异步以及遍历操作,在原有基础上添加多表特性,从而避免了内存的使用的问题,节省了内存空间,省去了内存操作和内存与数据库之间同步的操作,降低了数据操作的复杂度。
【专利说明】NoSQL数据库多表特性的实现方法及系统
【技术领域】
[0001]本发明涉及非关系型数据操作的【技术领域】,特别是NoSQL数据库多表特性实现的【技术领域】。
【背景技术】
[0002]目前的非关系型数据库没有表的概念,没有表可以实现高效的查找和写入,并且适应现在数据量非常大且高并发的读写的需求,目前多表的处理方式可以用初始化到内存中的方式将数据库中信息分成多个表。
[0003]A.将各个次表中的信息读取到内存中;
[0004]B.读取主表中的信息,并在内存中生成主表记录集;
[0005]C.根据预先建立的主表记录集中的未知信息与次表信息之间的关联关系,以所述主表记录集中的未知信息为索引,通过所述关联关系,检索内存中与该未知信息相关联的次表信息,并将所述主表记录集中的已知信息和检索到的相关次表信息拼装成数据库多表信息的完整记录。
[0006]现有技术存在以下缺陷:内存的存储量限制了数据库中信息量的大小,数据库和内存中数据的同步问题增加了操作量。

【发明内容】

[0007]有鉴于此,本发明提供一种NoSQL数据库多表特性的实现方法及系统,以减少数据库多表信息初始化过程中执行的数据库读取次数、缩短初始化时间,提高数据库操作的执行效率。
[0008]一方面,本发明提供一种NoSQL数据库多表特性的实现方法,其包括以下步骤:
[0009]S1:初始化数据库表;
[0010]S2:通过系统提供的接口进行同步操作、异步操作以及遍历操作
[0011]S3:判断是否退出,若是则直接退出;若否,则转步骤S2。
[0012]进一步地,上述同步操作和异步操作均包含读、写、删除操作,且携带有表名称的参数。
[0013]进一步地,所述遍历操作包括两种遍历方式:遍历整个数据库中的数据和遍历单独一个表中的数据。
[0014]进一步地,根据遍历操作携带的表的名字来区分所述遍历方式。
[0015]进一步地,对数据库的操作可以不加表的名字,此时以NoSQL数据库的操作方式操作数据库。
[0016]与此同时,本发明还提供一种NoSQL数据库多表特性的实现系统,其包括以下组成部分:
[0017]初始化模块:用于初始化数据库表;
[0018]接口模块:包括同步模块、异步模块以及遍历模块,其中同步模块用于提供同步操作,异步模块用于提供异步操作,遍历模块用于提供遍历操作;
[0019]判断模块:用于判断是否退出,若是则直接退出;若否,则转接口模块进行相应操作。
[0020]进一步地,上述同步模块和异步模块均包含读、写、删除操作,且携带有表名称的参数。
[0021]进一步地,所述遍历模块包括两种遍历方式:遍历整个数据库中的数据和遍历单独一个表中的数据。
[0022]进一步地,根据遍历模块在操作时携带的表的名字来区分所述遍历方式。
[0023]进一步地,对数据库的操作可以不加表的名字,此时以NoSQL数据库的操作方式操作数据库。
[0024]本发明通过在NoSQL数据库的基础之上将数据库的接口进行封装优化,提供给用户一个包含表的数据库接口,在原有基础上添加多表特性,从而避免了内存的使用的问题,节省了内存空间,省去了内存操作和内存与数据库之间同步的操作,降低了数据操作的复杂度。同时增加了数据库中信息分类的概念,扩展了数据库的应用范围。
【专利附图】

【附图说明】
[0025]图1为本发明实施例的实现NoSQL数据库多表特性的系统结构图;
[0026]图2为本发明实施例的实现NoSQL数据库多表特性的方法流程图。
【具体实施方式】
[0027]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例为实施本发明的较佳实施方式,所述描述是以说明本发明的一般原则为目的,并非用以限定本发明的范围。本发明的保护范围应当以权利要求所界定者为准,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028]本发明通过在NoSQL数据库的基础之上将数据库的接口进行封装优化,提供给用户一个包含表的数据库接口方案计划,在原有基础上添加多表特性。
[0029]参照图1,其中示出了根据本发明实施例的实现NoSQL数据库多表特性的系统结构图,具体说明如下。
[0030]系统包括NoSQL数据库,数据库接口模块以及用户。数据库接口模块用于为用户提供一个包含表的数据库接口,以对NoSQL数据库进行操作。该接口模块主要分为三个子模块:同步模块、异步模块和遍历模块。同步模块和异步模块都包含读、写以及删除三个操作,并且这三个操作都带有表名称的参数。同步模块等待查询指定的表中的键值对应的value,直到从数据库中返回了一个结果之后再进行下一步;异步模块可以无等待操作数据,只需要将要操作的函数传递给数据库接口就可以了。遍历模块分为遍历整个数据库中的数据和遍历单独一个表中的数据,主要根据表的名字来区分。与此同时,为了不使表的概念过于强化,仍然可以以NoSQL的概念操作数据库,只要不加表的名字就可以。
[0031]参照图2,其中示出了根据本发明实施例的实现NoSQL数据库多表特性的方法流程图,具体说明如下。[0032]当用户开始操作NoSQL数据库时,
[0033]S1:初始化数据库表;
[0034]S2:通过系统提供的接口进行同步操作、异步操作以及遍历操作
[0035]S3:判断是否退出,若是则直接退出;若否,则转步骤S2。
[0036]下面分别以增加数据库数据和更改数据库数据为例进一步详细说明本方案的实施方式。
[0037]当需要分多个表保存数据的时候,按以下步骤进行:
[0038]Sll:为每个表创建一个表名;
[0039]S21:在不同数据的key前面加上表名存放到数据库中。
[0040]上述数据库操作方式同样适用于删除和查找操作。
[0041]当需要更新数据时,按以下步骤进行:
[0042]S22:通过在需要更改的数据key前面加上表名查找需要更改的数据;
[0043]S23:修改查找到的数据;
[0044]S24:将修改后的数据以上述保存数据的方式写入到数据库中,从而以新数据覆盖原来的数据。
[0045]本发明通过在NoSQL数据库的基础之上将数据库的接口进行封装优化,提供给用户一个包含表的数据库接口,在原有基础上添加多表特性,从而避免了内存的使用的问题,节省了内存空间,省去了内存操作和内存与数据库之间同步的操作,降低了数据操作的复杂度。同时增加了数据库中信息分类的概念,扩展了数据库的应用范围。
[0046]虽然本发明以最佳实施例的方式揭示如上,然而并非用其限定本发明,本领域技术人员在不脱离本发明的精神和范围内,可做任意的更改和变动。本发明的保护范围仅由所附权利要求书限定的范围为准。
【权利要求】
1.一种NoSQL数据库多表特性的实现方法,其特征在于,包括以下步骤: 51:初始化数据库表; 52:通过系统提供的接口进行同步操作、异步操作以及遍历操作 53:判断是否退出,若是则直接退出;若否,则转步骤S2。
2.如权利要求1所述的方法,其特征在于:上述同步操作和异步操作均包含读、写、删除操作,且携带有表名称的参数。
3.如权利要求1至2任一所述的方法,其特征在于:所述遍历操作包括两种遍历方式:遍历整个数据库中的数据和遍历单独一个表中的数据。
4.如权利要求3所述的方法,其特征在于:根据遍历操作携带的表的名字来区分所述遍历方式。
5.如权利要求1所述的方法,其特征在于:对数据库的操作不加表的名字,此时以NoSQL数据库的操作方式操作数据库。
6.一种NoSQL数据库多表特性的实现系统,其特征在于,包括以下组成部分: 初始化模块:用于初始化数据库表; 接口模块:包括同步模块、异步模块以及遍历模块,其中同步模块用于提供同步操作,异步模块用于提供异步操作,遍历模块用于提供遍历操作; 判断模块:用于判断是否退出,若是则直接退出;若否,则转接口模块进行相应操作。
7.如权利要求6所述的系统,其特征在于:上述同步模块和异步模块均包含读、写、删除操作,且携带有表名称的参数。
8.如权利要求6至7任一所述的系统,其特征在于:所述遍历模块包括两种遍历方式:遍历整个数据库中的数据和遍历单独一个表中的数据。
9.如权利要求8所述的系统,其特征在于:根据遍历模块在操作时携带的表的名字来区分所述遍历方式。
10.如权利要求6所述的系统,其特征在于:对数据库的操作不加表的名字,此时以NoSQL数据库的操作方式操作数据库。
【文档编号】G06F17/30GK103744952SQ201410001133
【公开日】2014年4月23日 申请日期:2014年1月2日 优先权日:2014年1月2日
【发明者】崔晶晶, 林佳婕, 刘立娜, 张朋 申请人:北京集奥聚合网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1