一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据查询方法及其相关装置与流程

2022-06-16 03:17:47 来源:中国专利 TAG:
1.本技术涉及数据库领域,尤其涉及一种数据查询方法及其相关装置。
背景技术
::2.内存数据库由于其更快的读写速度,可以极大地提高数据搜索效率以及提高应用系统的整体性能,因此在当前这个大数据时代得到了越来越广泛的应用。但是相比于传统的磁盘数据库来说,内存数据库普遍应用的键-值(key-value,k-v)数据结构对于范围查询无法很好地支持,必须将全部数据加载到系统运行内存中,根据某个字段排序后才能查出符合范围条件的结果集,范围查询效率低下。3.因此,希望一种数据查询方法,可以提高范围查询的效率。技术实现要素:4.本技术提供了一种数据查询方法及其相关装置,5.第一方面,本技术提供了一种数据查询方法,该方法包括:获取查询范围,查询范围包括所需查询的数据的上界和/或下界;基于查询范围,在数据库中确定上界的位置和/或下界的位置;其中,数据库中的数据以二维数组的形式存储,且满足:存储在二维数组中第一维度的数据沿第一方向递增,存储在二维数组中第二维度的数据沿第二方向递增;基于上界的位置和/或下界的位置,在数据库中读取处于查询范围内的数据。6.基于上述方法,先定位出查询范围的上界和/或下界,进而基于上界和/或下界的位置读取满足查询范围的数据。如此一来,就不必再将数据库中所有的数据全部加在到内存中进行排序后再查找,节省了加载数据及排序的时间,提高了范围查询的效率。7.结合第一方面,在第一方面的某些可能的实现方式中,第一维度的长度和第二维度的长度相同。8.结合第一方面,在第一方面的某些可能的实现方式中,用于标识第一维度的数据的序号沿第一方向递增,且用于标识第二维度的数据的序号沿第二方向递增。9.结合第一方面,在第一方面的某些可能的实现方式中,该方法还包括:根据待存储至数据库的数据个数m,确定长度n;将m个数据存储在n×n的二维数组中;其中,长度n与数据个数m之间满足:(n-1)2<m≤n2,m和n为正整数。10.结合第一方面,在第一方面的某些可能的实现方式中,用于标识第一维度的数据的序号包括p至p n-1,用于标识第二维度的数据的序号包括q至q n-1,m个数据的排列方式满足:m个数据中的第m个数据在二维数组中的位置为(im,jm),m个数据中的第m 1个数据在二维数组中的位置为(im 1,jm 1),第m 1个数据大于第m个数据;其中,当jm=q n-1时,im 1=p n-1,jm 1=q-p im 1;当jm≠q n-1且im=p时,im 1=p-q jm 1,jm 1=q;当jm≠q n-1且im≠p时,im 1=im-1,jm 1=jm 1。11.结合第一方面,在第一方面的某些可能的实现方式中,用于标识第一维度的数据的序号包括p至p n,用于标识第二维度的数据的序号包括q至q n,m个数据的排列方式满足:m个数据中第m个数据的位置为(im,jm),m个数据中的第m 1个数据的位置为(im 1,jm 1),第m 1个数据大于第m个数据;当jm=q n-1时,im 1=im 1,jm 1=q;当jm≠q n-1时,im 1=im,jm 1=jm 1。12.结合第一方面,在第一方面的某些可能的实现方式中,用于标识第一维度的数据的序号包括p至p n,用于标识第二维度的数据的序号包括q至q n,m个数据的排列方式满足:m个数据中第m个数据的位置为(im,jm),m个数据中的第m 1个数据的位置为(im 1,jm 1),第m 1个数据大于第m个数据;当im=p n-1时,im 1=p,jm 1=jm 1;当im≠p n-1时,im 1=im 1,jm 1=jm。13.结合第一方面,在第一方面的某些可能的实现方式中,基于查询范围,在数据库中确定上界的位置和/或下界的位置,包括:将上界和/或下界分别作为目标数据,通过如下步骤,确定目标数据的位置:将预定义位置作为参考位置;基于参考位置上的数据与目标数据的大小关系,调整参考位置,直至参考位置上的数据与目标数据相等;将参考位置的位置确定为目标数据的位置。14.结合第一方面,在第一方面的某些可能的实现方式中,预定义位置为(if=p n-1,jf=q);基于参考位置上的数据与目标数据的大小关系,调整参考位置,包括:若参考位置上的数据大于目标数据,则调整参考位置至(if-1,jf);若参考位置上的数据小于目标数据,则调整参考位置至(if,jf 1)。15.结合第一方面,在第一方面的某些可能的实现方式中,基于上界的位置和/或下界的位置,在数据库中读取满足查询范围的数据,包括:按照m个数据的排列方式,在二维数组中由上界的位置和/或下界的位置所确定的范围内,依次读取数据;读取到的数据为满足查询范围的数据。16.第二方面,本技术提供了一种数据查询装置,该装置包括获取模块和处理模块;获取模块,用于获取查询范围,查询范围包括所需查询的数据的上界和/或下界;处理模块,用于基于查询范围,在数据库中确定上界的位置和/或下界的位置;其中,数据库中的数据以二维数组的形式存储,且满足:存储在二维数组中第一维度的数据沿第一方向递增,存储在二维数组中第二维度的数据沿第二方向递增;并用于基于上界的位置和/或下界的位置,在数据库中读取满足查询范围的数据。17.第三方面,本技术提供了一种数据查询装置,包括存储器和处理器,其中,存储器用于存储计算机程序,处理器用于调用并执行计算机程序,以使得该装置执行第一方面以及第一方面任意一种可能的实现方式。18.第四方面,本技术提供了一种计算机可读存储介质,包括计算机程序,当计算机程序在计算机上运行时,使得计算机执行第一方面以及第一方面任一种可能实现方式中的方法。19.第五方面,本技术提供了一种计算机程序产品,包括计算机程序,当计算机程序在计算机上运行时,使得计算机执行第一方面以及第一方面任一种可能实现方式中的方法。20.应当理解的是,本技术的第二方面至第五方面与本技术的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。21.需要说明的是,本技术提供的数据查询方法及其相关装置可用于金融领域在数据查询的方面的应用,如金融服务中查询金融数据,也可用于除金融领域之外任意领域在数据查询的方面的应用,本技术对数据查询方法及其相关装置的应用领域不做限定。附图说明22.图1是适用于本技术实施例提供的数据查询方法的场景示意图;23.图2是本技术实施例提供的数据存储方法的示意性流程图;24.图3是本技术实施例提供的二维数组的示意图;25.图4至图6是本技术实施例提供的数据的排列方式的示意图;26.图7是本技术实施例提供的数据查询方法的示意性流程图;27.图8是本技术实施例提供的确定目标数据的位置的示意图;28.图9是本技术实施例提供的读取数据的示意图;29.图10是本技术实施例提供的将数据结构加入数据库的方法示意图;30.图11是本技术实施例提供的数据查询装置的示意性框图;31.图12是本技术实施例提供的数据查询装置的另一示意性框图。具体实施方式32.使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。33.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。34.在本技术实施例中,术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。此外,术语“包括”以及任何变形,意图在于覆盖不排他的包含。35.图1是适用于本技术实施例提供的数据查询方法的场景示意图。如图1所示,该场景可以包括服务器110和与其相连的数据库120,服务器110可以从数据库120中读取数据或者查询数据。36.相比于传统的磁盘数据库来说,内存数据库由于其更快的读写速度,可以极大地提高数据搜索效率以及提高应用系统的整体性能,因此在当前这个大数据时代得到了越来越广泛的应用。内存数据库普遍应用的k-v数据结构对于范围查询无法很好地支持,必须将全部数据加载到系统运行内存中,根据某个字段排序后才能查出符合范围条件的结果集,范围查询效率低下。37.一示例,使用k-v数据结构记录用户的姓名、身高数据如下表1:38.表139.姓名张*李*王*赵*身高18017016517540.如果需要查询某个用户的身高,直接输入该用户的姓名,即可得到该用户的身高;但是如果需要查询170及以上身高的用户,就需要从数据库中取出所有用户的数据,再根据身高字段排序后才能得到结果,这样进行范围查询的效率比较低。41.鉴于此,本技术提供了一种数据查询方法。根据查询范围的上界和/或下界,在以二维数组的形式存储的数据中读取该查询范围内的数据,由于数据在该二维数组中是按照预定义的规则存储的,存储在第一维度的数据沿第一方向递增,存储在第二维度的数据沿第二方向递增。因此,范围查询过程也可以遵循该规则,先定位出查询范围的上界和/或下界,进而基于上界和/或下界的位置读取满足查询范围的数据。如此一来,就不必再将数据库中所有的数据全部加在到内存中进行排序后再查找,节省了加载数据及排序的时间,提高了范围查询的效率。42.下面将结合附图对本技术实施例提供的方法进行详细说明。43.为了便于理解本技术实施例提供的数据查询方法,下文中首先结合图2至图6对数据存储过程做详细说明,然后结合图7至图9对数据查询过程做详细说明。44.图2是本技术实施例提供的数据存储方法200的示意性流程图。该方法200可以由数据存储装置执行,该数据存储装置例如可以是图1中的数据库120,或者也可以是配置在该数据库120中的部件,或者还可以是用于实现部分或全部数据库功能的功能模块或软件。本技术对此不作限定。45.图2所示的方法包括如下步骤:46.步骤210,根据待存储至数据库中的数据个数m,确定二维数组的维度;47.步骤220,将m个数据存储在该二维数组中。48.下面对该方法200中的各个步骤进行详细说明。49.在本技术实施例中,数据库中的数据可以以二维数组的形式来存储,且满足:存储在所述二维数组中第一维度的数据沿第一方向递增,存储在所述二维数组中第二维度的数据沿第二方向递增。50.其中,二维数组第一维度的长度和第二维度的长度可以相同,也可以不同。本技术对此不作限定。51.一种可能的设计是,第一维度的长度与第二维度的长度相同。也即,该二维数组中第一维度可存储的数据个数与第二维度可存储的数据个数相同。52.步骤210具体可以包括:根据待存储至数据库中的数据个数m,确定长度n。53.应理解,第一维度的长度与第二维度的长度为n,也即该二维数组为n×n的数组。54.为了使二维数组能够容纳全部的数据,n×n应当大于或等于m;为了使二维数组的大小不至于冗余,(n-1)×(n-1)应当小于m。即,(n-1)2<m≤n2。55.一示例,如果m=25,则当且仅当n=5时符合条件(5-1)2<25≤52,则二维数组为5×5的二维数组。5×5的二维数组中有25个位置,可以容纳25个数据。56.另一示例,如果m=26,则当且仅当n=6时,符合条件(6-1)2<26≤62,则二维数组为6×6的二维数组。6×6的二维数组中有36个位置,可以容纳26个数据,空余的10个位置可以由空值(null)占位,或者其他预定义的值占位,本技术对此不作任何限定。57.可选地,步骤220具体可以包括:将m个数据存储在n×n的二维数组中。58.如前所述,数据在二维数组中的存储遵循数据在第一维度沿第一方向递增,在第二维度沿第二方向递增的规则。下面将基于该规则来详细说明数据在二维数组中的排列方式。59.为便于说明,下文中以二维矩阵作为二维数组的一种表现形式来描述。比如,该二维数组的第一维度为矩阵的行,第二维度为矩阵的列。与之对应的第一方向可以是从左到右,也可以是从右到左,第二方向可以是从上到下,也可以是从下到上。60.又如,该二维数组的第一维度为矩阵的列,第二维度为矩阵的行。与之对应的第一方向可以是从上到下,也可以是从下到上,第二方向可以是从左到右,也可以是从右到左。61.可选地,对于二维数组来说,用于标识第一维度的数据的序号沿第一方向递增,如p至p n-1;用于标识第二维度的数据的序号沿第二方向递增,如q至q n-1,如图3所示。62.数据存储在二维数组中满足如下条件:数据本身有大小关系,则存储在二维数组中第一维度的数据沿第一方向递增,存储在二维数组中第二维度的数据沿第二方向递增,如图3中的(a)所示;或者,数据本身并没有大小关系,而是有顺序的先后关系,如英文字母等,则存储在二维数组中第一维度的数据沿第一方向顺序为正向,存储在二维数组中第二维度的数据沿第二方向顺序为正向,如图3中的(b)所示。63.要使m个数据存储在二维数组中满足上述条件,m个数据的排列方式可以有很多种,以下列举三种排列方式,取m=25、n=5、p=q=0。仅作示例,不作限定。64.第一种排列方式:65.如图4所示:25个数据中,第1个数据的位置为(0,0),第m个数据的位置为(im,jm),第m 1个数据的位置为(im 1,jm 1)。66.其中,第m 1个数据的位置(im 1,jm 1)与第m个数据的位置(im,jm)之间的关系满足:67.当jm=4时,im 1=4,jm 1=im 1;68.当jm≠4且im=0时,im 1=jm 1,jm 1=0;69.当jm≠4且im≠0时,im 1=im-1,jm 1=jm 1。70.例如第15个数据的位置为(i15=0,j15=4),满足条件jm=4,则i16=4,j16=i15 1=1,所以第16个数据的位置为(i16=4,j16=1)。71.再例如第10个数据的位置为(i10=0,j10=3),满足条件jm≠4且im=0,则i11=j10 1=4,j11=0,所以第11个数据的位置为(i11=4,j11=0)。72.又例如第11个数据的位置为(i11=4,j11=0),满足条件jm≠4且im≠0,则i12=i11-1=3,j12=j11 1=1,所以第12个数据的位置为(i12=3,j12=1)。73.第二种排列方式:74.如图5所示:25个数据中,第1个数据的位置为(0,0),第m个数据的位置为(im,jm),第m 1个数据的位置为(im 1,jm 1)。75.其中,第m 1个数据的位置(im 1,jm 1)与第m个数据的位置(im,jm)之间的关系满足:76.当jm=4时,im 1=im 1,jm 1=0;77.当jm≠4时,im 1=im,jm 1=jm 1。78.例如第10个数据的位置为(i10=1,j10=4),满足条件jm=4,则i11=i10 1=2,j11=0,所以第11个数据的位置为(i11=2,j11=0)。79.再例如第11个数据的位置为(i11=2,j11=0),满足条件jm≠4,则i12=i11=2,j12=j11 1=1,所以第12个数据的位置为(i12=2,j12=1)。80.第三种排列方式:81.如图6所示:25个数据中,第1个数据的位置为(0,0),第m个数据的位置为(im,jm),第m 1个数据的位置为(im 1,jm 1)。82.其中,第m 1个数据的位置(im 1,jm 1)与第m个数据的位置(im,jm)之间的关系满足:83.当im=4时,im 1=0,jm 1=jm 1;84.当im≠4时,im 1=im 1,jm 1=jm。85.例如第10个数据的位置为(i10=4,j10=1),满足条件im=4,则i11=0,j11=j10 1=2,所以第11个数据的位置为(i11=0,j11=2)。86.再例如第11个数据的位置为(i11=0,j11=2),满足条件im≠4,则i12=i11 1=1,j12=j11=2,所以第12个数据的位置为(i12=1,j12=2)。87.基于上文所提供的几种可能的排列方式,m个数据便可按照其中的任意一种排列方式存储至数据库中。88.应理解,上文所提供的三种排列方式仅为满足上述规则的三种可能的设计,基于上述规则,本领域的技术人员还可进行简单的变换,得到更多可能的排列方式,为了简洁,这里不再枚举。89.应理解,m个数据在被存储至数据库之后,该数据库还可提供修改或删除的接口。也即,可以在该数据库中增加存储更多的数据,也可删除数据。由于存储的数据个数会发生变化,故用于存储数据的二维数组也会发生变化。90.在该数据库中增加存储更多的数据的步骤如下:计算增加数据之后的数据的个数m还是否符合(n-1)2<m≤n2这一条件。如果仍然符合(n-1)2<m≤n2这一条件,则先找到增加数据的位置,然后将该位置之后的数据沿着数据排列的顺序向后移一个位置,再将增加的数据放入增加数据的位置;如果不符合(n-1)2<m≤n2这一条件,即m大于n2,则要建立大小为(n 1)×(n 1)的新二维数组,再沿着数据排列的顺序将增加新数据之后的全部数据加入新二维数组。91.同理,在该数据库中删除数据的步骤如下:计算删除数据之后的数据的个数m还是否符合(n-1)2<m≤n2这一条件。如果仍然符合(n-1)2<m≤n2这一条件,则先找到删除数据的位置,删除该数据,然后将该位置之后的数据沿着数据排列的顺序向前移一个位置;如果不符合(n-1)2<m≤n2这一条件,即m小于或等于(n-1)2,则要建立大小为(n-1)×(n-1)的新二维数组,再沿着数据排列的顺序将删除该数据之后的全部数据加入新二维数组。92.在完成了数据存储后,数据库便可为用户提供查询服务。下面将结合图7至图9详细说明本技术实施例提供的数据查询方法。93.图7是本技术实施例提供的数据查询方法的示意性流程图,该方法700可以包括步骤710至步骤730,可以由数据查询装置来执行。该数据查询装置例如可以是图1所示的服务器110,或者也可以配置在该数据库120中的部件,或者还可以是用于实现部分或全部数据库功能的功能模块或软件。本技术对此不作限定。应理解,该数据查询装置与前文所述的数据存储装置可以是同一个装置,也可以是不同的装置,本技术对此不作限定。94.下面对方法700中的各个步骤做详细说明。95.在步骤710中,获取查询范围,该查询范围包括所需查询的数据的上界和/或下界。96.本技术提供的数据查询方法,可用于实现范围查询,即,查询一个范围内的数据。因此,查询范围可以是有上界和下界的封闭范围,也可以是只有上界或者只有下界的开放范围。查询范围可以是小于或等于上界和/或大于或等于下界,也可以是小于上界和/或大于下界,本技术实施例中以查询范围小于或等于上界和/或大于或等于下界为例。97.一示例,数据包括1到25的整数,所需查询的数据为9到17的整数,则查询范围包括所需查询的数据的上界17和下界9。98.另一示例,数据包括1到25的整数,所需查询的数据为小于或等于17的整数,则查询范围包括所需查询数据的上界17。99.又一示例,数据包括1到25的整数,所需查询的数据为大于或等于9的整数,则查询范围包括所需查询数据的下界9。100.在步骤720中,基于查询范围,在数据库中确定上界的位置和/或下界的位置。如前所述,数据可以以二维数组的形式存储在数据库中。数据在该二维数组中存储时可以遵循预定义的规则:存储在该二维数组中第一维度的数据沿第一方向递增,且存储在该二维数组中第二维度的数据沿第二方向递增。101.在该二维数组中查找数据,可以先定位查询范围的上界的位置和/或下界的位置,进而基于上界的位置和/或下界的位置,读取处于该查询范围内的数据。可选地,可以先在二维数组中预定义一个位置为参考位置,然后比较参考位置上的数据和目标数据的大小关系,并基于二者的大小关系调整参考位置,直至参考位置上的数据与目标数据相等,则参考位置就是目标数据的位置。102.示例性地,可以将二维数组中在第一维度上最大,且第二维度上最小的位置预定义为参考位置,然后比较参考位置上的数据和目标数据的大小关系。如果参考位置上的数据大于目标数据,则将参考位置向第一方向的反方向移动一个位置;如果参考位置上的数据小于目标数据,则将参考位置向第二方向移动一个位置;如果参考位置上的数据等于目标数据,则参考位置就是目标数据的位置。103.一示例,如图8所示,取m=25、n=5、p=q=0,目标数据为9。104.预定义的参考位置(if,jf)为(4,0),参考位置上的数据为11,11大于9,则将参考位置移动到(if-1,jf),即(3,0);接下来参考位置(if,jf)变成了(3,0),参考位置上的数据为7,7小于9,则将参考位置移动到(if,jf 1),即(3,1);接下来参考位置(if,jf)变成了(3,1),参考位置上的数据为12,12大于9,则将参考位置移动到(if-1,jf),即(2,1);接下来参考位置(if,jf)变成了(2,1),参考位置上的数据为8,8小于9,则将参考位置移动到(if,jf 1),即(2,2);接下来参考位置(if,jf)变成了(2,2),参考位置上的数据为13,13大于9,则将参考位置移动到(if-1,jf),即(1,2);接下来参考位置(if,jf)变成了(1,2),参考位置上的数据为9,9等于9,则此时参考位置(1,2)就是目标数据的位置。105.在步骤730中,基于上界的位置和/或下界的位置,在数据库中读取满足查询范围的数据。106.可选地,在查询范围给出的范围中,按照数据的排列方式依次读取数据,读取到的数据即为满足查询范围的数据。107.一示例,如图9所示,查询范围为:查询9到17范围内的数据。则上界为17,下界为9。由于本技术实施例中查询范围小于或等于上界和/或大于或等于下界,所以最终满足查询范围的数据包括9和17。108.首先确定下界9的位置,读取数据9,再按照数据排列方式读取下一个数据10,再按照数据排列方式读取下一个数据11,以此类推,直到读取到上界数据17。就读取到了满足查询范围的数据。109.基于上述方法,在以二维数组的形式存储的数据中,定位出查询范围的上界和/或下界,进而基于上界和/或下界的位置读取满足查询范围内的数据,如此一来,就不必再将数据库中所有的数据全部加在到内存中进行排序后再查找,节省了加载数据及排序的时间,可以效率更高地实现范围查询。110.图10是本技术实施例提供的将数据结构加入数据库的方法示意图。该方法1000可以由图1中的服务器110执行。111.图10所示的方法包括如下步骤:112.步骤1010:定义数据结构;113.步骤1020:定义实现数据结构核心方法;114.步骤1030:将数据结构加入数据库。115.下面对该方法1000中各个步骤进行详细说明。116.在步骤1010中,定义数据结构。117.针对本实施例而言,数据结构是二维数组,且满足存储在二维数组中第一维度的数据沿第一方向递增,存储在二维数组中第二维度的数据沿第二方向递增的条件。118.应理解,数据结构可以有多种,如各种不同维度的数组,除了数组之外,还有栈、队列、链表、树、图、堆和散列表等。119.在步骤1020中,定义实现数据结构核心方法。120.例如二维数组中数据的排列方式、在已有的二维数组中增加数据以及删除数据的方式等。121.在步骤1030中,将数据结构加入数据库。122.一示例,将二维数组数据结构加入远程字典服务(remotedictionaryserver,redis)数据库,redis数据库是一种内存数据库。应理解,可以加入数据结构的数据库类型不限于redis数据库,也可以是memcached、aerospike、apacheignite等类型的数据库,本技术对此不作任何限定。123.首先在server.h中添加类型定义,可通过如下代码实现:124.#defineobj_matrix_type7125.然后在object.c中添加创建对象函数,可通过如下代码实现:126.robj*creatematrixobject(void){127.matrix*new_matrix;128.returnnew_node;129.}130.然后添加redis销毁函数,在object.c中的decrrefcount函数里添加如下代码:131.caseobj_matrix_type:destroy_matrix(o);break;132.然后在object.c中添加销毁函数133.voiddestroy_matrix(matrix*matrix){134.zfree(matrix);135.}136.接下来实现命令,在db.c的typecommand函数中添加如下代码:137.caseobj_matrix_type:type="matrix";break;138.在t_hellotype.c实现命令,例如插入如下命令代码:[0139][0140][0141]最后将命令写入rediscommandtable,在server.c中rediscommandtable数组添加如下代码:[0142][0143]图11是本技术实施例提供的数据查询装置的示意性框图。该装置可以为图1中的服务器110,如图11所示,该数据查询装置1100可用于实现上文方法实施例中数据存储装置和/或数据查询装置的功能。示例性地,该装置1100可以包括获取模块1110和处理模块1120。[0144]其中,获取模块1110可用于,获取查询范围,查询范围包括所需查询的数据的上界和/或下界;处理模块1120可用于,基于查询范围,在数据库中确定上界的位置和/或下界的位置;其中,数据库中的数据以二维数组的形式存储,且满足:存储在二维数组中第一维度的数据沿第一方向递增,存储在二维数组中第二维度的数据沿第二方向递增;并用于基于上界的位置和/或下界的位置,在数据库中读取满足查询范围的数据。[0145]图12是本技术实施例提供的数据查询装置的另一示意性框图。如图12所示,该装置1200可以包括至少一个处理器1210,用于可用于实现本技术提供的方法中数据存储装置和/或数据查询装置的功能。具体参见方法示例中的详细描述,此处不做赘述。[0146]该装置1200还可以包括一个存储器1220,用于存储程序指令和/或数据。存储器1220和处理器1210耦合。本技术中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器1210可能和存储器1220协同操作。处理器1210可能执行存储器1220中存储的程序指令。所述至少一个存储器中的至少一个可以包括于处理器中。[0147]该装置1200还可以包括一个通信接口1230,用于通过传输介质和其它设备进行通信,从而用于装置1200中的装置可以和其它设备进行通信。所述通信接口1230例如可以是收发器、接口、总线、电路或者能够实现收发功能的装置。处理器1210可利用通信接口1230收发数据和/或信息,并用于实现图7对应的实施例中所述的数据查询的方法。[0148]本技术中不限定上述处理器1210、存储器1220以及通信接口1230之间的具体连接介质。本技术在图12中以处理器1210、存储器1220以及通信接口1230之间通过总线1240连接。总线1240在图12中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。[0149]在本技术实施例中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。[0150]根据本技术提供的方法,本技术还提供一种计算机可读存储介质,该计算机可读存储介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行图2所示实施例中的数据存储方法和/或图7所示实施例中的数据查询方法。[0151]根据本技术提供的方法,本技术还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码。当该计算机程序代码在计算机上运行时,使得该计算机执行图2所示实施例中的数据存储方法和/或图7所示实施例中的数据查询方法。[0152]本技术提供的技术方案可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、终端设备或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线,例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机可以存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质例如,数字视频光盘(digitalvideodisc,dvd)、或者半导体介质等。[0153]以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献