数据查询的方法、查询服务设备、客户端设备和数据系统与流程

文档序号:12271467阅读:286来源:国知局
数据查询的方法、查询服务设备、客户端设备和数据系统与流程

本发明涉及信息技术领域,并且更具体地,涉及一种数据查询的方法、查询服务设备、客户端设备和数据系统。



背景技术:

分页查询技术可以支持用户查看某一页面的数据记录。在目前的分页查询技术中,一种方式是将所有符合查询条件的记录先缓存在内存中,当用户再提交了某一页的查询请求之后,直接从内存中拿到用户想要的数据快速返回给用户。这种方式在查询涉及到的数据量过大,或者并发请求量过大时,对内存的压力比较大,尤其是在大数据领域内是不适用的。

另一种方式是将数据直接按照行号(ROW_NUM)进行组织排序,在查询时按照ROW_NUM快速定位到想要查询的数据。然而这种排序在很大程度上并不是用户所期望的排序,而且这种排序在大数据领域内,可能会导致数据入库性能过低,因为不能很好地将数据打散到对应的数据分区中。

因此,提高分页查询的效率成为大数据领域内亟待解决的一个技术问题。



技术实现要素:

本发明实施例提供了一种数据查询的方法、查询服务设备、客户端设备和数据系统,能够提高分页查询的效率。

第一方面,提供了一种数据查询的方法,包括:

接收客户端设备发送的第一查询请求,该第一查询请求包括查询条件和页面提示信息,该页面提示信息用于指示第一页面中的第一数据记录,该第一页面为满足该查询条件的至少一个数据页面中的数据页面;

根据该页面提示信息,确定该第一数据记录;

根据该第一数据记录和该查询条件,向该客户端设备发送该第一页面中的数据记录。

本发明实施例的数据查询的方法,根据页面提示信息可以快速地定位到第一页面中的第一数据记录进而获取第一页面中的数据记录,实现快速地分页查询,从而能够提高分页查询的效率。

在一些可能设计中,该第一数据记录为该第一页面中的第一条数据记录。

在一些可能设计中,该第一数据记录也可以为该第一页面中的其他条数据记录,例如,最后一条记录,或者确定的某一条记录。

在一些可能设计中,根据该第一数据记录和该查询条件,向该客户端设备发送该第一页面中的数据记录,包括:

向该客户端设备发送从该第一数据记录开始的,满足该查询条件的预定数量的数据记录,该预定数量为一个页面中的数据记录的数量。

在一些可能设计中,查询服务设备可以在查询到该第一页面中的全部数据记录后,再向该客户端设备返回该第一页面中的数据记录;查询服务设备也可以在每查询到该第一页面中的一条数据记录后,就向该客户端设备返回该数据记录。

在一些可能设计中,该页面提示信息包括该第一数据记录的主键信息。

这种方式适合于按照主键查询的方式,查询服务设备可以根据该第一数据记录的主键信息快速定位到该第一数据记录。

在一些可能设计中,该页面提示信息包括该第一数据记录的主键信息和与该查询条件对应的索引信息。

这种方式适合于根据索引查询的方式,可以使查询服务设备快速地在相应的索引中定位到该第一数据记录对应的索引记录,进而得到该第一数据记录。

在一些可能设计中,该页面提示信息中的具体内容可以是该第一数据记录的信息,也可以是其他数据记录的信息,只要其他数据记录与该第一数据记录的关系确定即可。

在一些可能设计中,在接收客户端设备发送的第一查询请求之前,该方法还包括:

接收该客户端设备发送的第二查询请求,该第二查询请求包括该查询条件;

根据该第二查询请求,向该客户端设备发送满足该查询条件的至少一个数据页面的数据记录,以及向该客户端设备发送该页面提示信息。

在一些可能设计中,在向该客户端设备发送该页面提示信息之前,该方法还包括:

接收该客户端设备发送的页面提示信息请求,该页面提示信息请求用于请求该页面提示信息。

第二方面,提供了一种数据查询的方法,包括:

向查询服务设备发送第一查询请求,该第一查询请求包括查询条件和页面提示信息,该页面提示信息用于指示第一页面中的第一数据记录,该第一页面为满足该查询条件的至少一个数据页面中的数据页面;

接收该查询服务设备根据该第一查询请求发送的该第一页面中的数据记录。

本发明实施例的数据查询的方法,采用页面提示信息指示所请求页面中的第一数据记录,可以实现快速地分页查询,从而能够提高分页查询的效率。

在一些可能设计中,该第一数据记录为该第一页面中的第一条数据记录。

在一些可能设计中,该第一页面中的数据记录为从该第一数据记录开始的,满足该查询条件的预定数量的数据记录,该预定数量为一个页面中的数据记录的数量。

在一些可能设计中,该页面提示信息包括该第一数据记录的主键信息。

这种方式适合于按照主键查询的方式,查询服务设备可以根据该第一数据记录的主键信息快速定位到该第一数据记录。

在一些可能设计中,该页面提示信息包括该第一数据记录的主键信息和与该查询条件对应的索引信息。

这种方式适合于根据索引查询的方式,可以使查询服务设备快速地在相应的索引中定位到该第一数据记录对应的索引记录,进而得到该第一数据记录。

在一些可能设计中,在向查询服务设备发送第一查询请求之前,该方法还包括:

向该查询服务设备发送第二查询请求,该第二查询请求包括该查询条件;

接收该查询服务设备根据该第二查询请求发送的满足该查询条件的至少一个数据页面的数据记录;

接收该查询服务设备发送该页面提示信息;

存储该页面提示信息。

在一些可能设计中,该方法还包括:

向该查询服务设备发送页面提示信息请求,该页面提示信息请求用于请求该页面提示信息。

第三方面,提供了一种查询服务设备,包括执行第一方面或第一方面的任意可能设计中的方法的模块。

第四方面,提供了一种客户端设备,包括执行第二方面或第二方面的任意可能设计中的方法的模块。

第五方面,提供了一种查询服务设备。该查询服务设备包括处理器、存储器和通信接口。处理器与存储器和通信接口连接。存储器用于存储指令,处理器用于执行该指令,通信接口用于在处理器的控制下与其他网元进行通信。该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能设计中的方法。

第六方面,提供了一种客户端设备。该客户端设备包括处理器、存储器和通信接口。处理器与存储器和通信接口连接。存储器用于存储指令,处理器用于执行该指令,通信接口用于在处理器的控制下与其他网元进行通信。该处理器执行该存储器存储的指令时,该执行使得该处理器执行第二方面或第二方面的任意可能设计中的方法。

第七方面,提供了一种数据系统,包括:

第三方面或第五方面的查询服务设备;以及

数据库,该数据库中包括待查询的数据。

在一些可能设计中,该数据系统还包括:

第四方面或第六方面的客户端设备。

第八方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括:用于执行第一方面或第一方面的任意可能设计中的方法的指令,和/或用于执行第二方面或第二方面的任意可能设计中的方法的指令。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的应用场景的示意图。

图2是本发明一个实施例的数据查询的方法的示意性流程图。

图3是本发明另一实施例的数据查询的方法的示意性流程图。

图4是本发明一个实施例的查询服务设备的示意性框图。

图5是本发明一个实施例的客户端设备的示意性框图。

图6是本发明另一实施例的查询服务设备的结构示意图。

图7是本发明另一实施例的客户端设备的结构示意图。

图8是本发明一个实施例的数据系统的示意图。

图9是本发明另一实施例的数据系统的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

应理解,本发明实施例中,数据记录在本领域中也可以称为记录或数据。

本发明实施例的技术方案可以应用于数据系统中。图1是本发明实施例的应用场景的示意图。

在图1中,数据库103可以是分布式的,即分布于多个服务器中;数据库103也可以为单服务器式的,即位于单服务器中。

客户端设备101用于向查询服务设备102发送查询请求并接收查询服务设备102返回的查询结果。

查询服务设备102用于处理客户端设备101的查询请求并向客户端设备101返回查询结果。例如,将客户端设备101的查询请求解析、转换成数据库查询请求,以查询数据库103中的数据。查询服务设备102可以设置于单服务器中的数据库管理系统中,或者设置于分布式数据库系统中的分布式管理系统中。

应理解,客户端设备101和查询服务设备102可以是物理设备,也可以是设置于物理设备中的装置、单元或模块;另外,客户端设备101和查询服务设备102可以在同一物理设备上实现,也可以分别在不同的物理设备上实现。

图2示出了根据本发明实施例的数据查询的方法的示意性流程图。图2中的客户端设备可以为图1中的客户端设备101;查询服务设备可以为图1中的查询服务设备102。

210,客户端设备向查询服务设备发送第一查询请求。

该第一查询请求包括查询条件和页面提示信息,该页面提示信息用于指示第一页面中的第一数据记录,该第一页面为满足该查询条件的至少一个数据页面中的数据页面。

该第一查询请求用于请求该第一页面中的数据记录。也就是说,该第一查询请求为分页查询请求。在本发明实施例中,在第一查询请求中除了包括查询条件外,还包括页面提示信息,该页面提示信息用于指示第一页面中的第一数据记录,这样,查询服务设备可以根据该页面提示信息快速定位到该第一数据记录,进而得到该第一页面中的数据记录。

可选地,该第一数据记录可以为该第一页面中的第一条数据记录。

应理解,该第一数据记录也可以为该第一页面中的其他条数据记录,例如,最后一条记录,或者确定的某一条记录。

还应理解,在本发明实施例中,该页面提示信息用于指示第一页面中的第一数据记录,该页面提示信息中的具体内容可以是该第一数据记录的信息,也可以是其他数据记录的信息,只要其他数据记录与该第一数据记录的关系确定即可。例如,该页面提示信息中的具体内容可以是上一页面中的最后一条数据记录的信息,这样也可以指示下一页面中的第一条数据记录。

可选地,该页面提示信息可以包括该第一数据记录的主键(Primary Key)信息。这种方式适合于按照主键查询的方式,查询服务设备可以根据该第一数据记录的主键信息快速定位到该第一数据记录。

可选地,该页面提示信息可以包括该第一数据记录的主键信息和与该查询条件对应的索引信息。该索引信息用于确定该查询条件对应的索引。这种方式适合于根据索引查询的方式。

在数据库中存储有数据表对应的一个或多个索引时,可以采用根据索引查询的方式。索引中的索引字段可以为与数据表的主键不同的字段,索引中的其他字段可以包括主键字段。根据索引查询的方式为,根据查询条件确定待查询的索引,先在数据库中查询该索引,根据索引查询结果再在数据表中查询相应的数据记录。例如,若查询条件为“姓名为张”,若数据库中有按照姓名建立的索引,则可以先查询该索引,再根据索引查询结果,例如查询到的“张”对应的“ID”,查询数据表,获取相应的数据记录。

在根据索引查询时,数据记录的排序和分页都按照在索引中的顺序进行。在这种情况下,在页面提示信息包括该第一数据记录的主键信息和与该查询条件对应的索引信息可以使查询服务设备快速地在相应的索引中定位到该第一数据记录对应的索引记录,进而得到该第一数据记录。

220,查询服务设备根据该页面提示信息,确定该第一数据记录。

查询服务设备接收到客户端设备发送的第一查询请求后,根据该第一查询请求中的页面提示信息,确定该第一数据记录。如前所述,由于该页面提示信息指示第一页面中的第一数据记录,查询服务设备可以快速定位到该第一数据记录。

230,查询服务设备根据该第一数据记录和该查询条件,向该客户端设备发送该第一页面中的数据记录。

在确定该第一数据记录后,查询服务设备根据该第一数据记录和该查询条件,向该客户端设备返回该第一页面中的数据记录。可选地,查询服务设备可以在查询到该第一页面中的全部数据记录后,再向该客户端设备返回该第一页面中的数据记录;查询服务设备也可以在每查询到该第一页面中的一条数据记录后,就向该客户端设备返回该数据记录。

可选地,该查询服务设备可以向该客户端设备发送从该第一数据记录开始的,满足该查询条件的预定数量的数据记录,该预定数量为一个页面中的数据记录的数量。

具体而言,该查询服务设备从该第一数据记录开始,查询满足该查询条件的数据记录,并返回给该客户端设备。返回方式可以是,查询到预定数量的数据记录后,一次性返回给该客户端设备;也可以是每查询到满足该查询条件的一条数据记录后,就返回给该客户端设备,直到返回预定数量的数据记录为止。

应理解,上述从该第一数据记录开始的,满足该查询条件的预定数量的数据记录为按照查询过程先后得到的预定数量的数据记录。例如,在该第一数据记录为该第一页面中的第一条数据记录的情况下,该预定数量的数据记录为从该第一条数据记录往后查询得到的数据记录;在该第一数据记录为该第一页面中的最后第一条数据记录的情况下,该预定数量的数据记录为从该第一条数据记录往前查询得到的数据记录;在该第一数据记录为该第一页面中的确定的某一条记录的情况下,该预定数量的数据记录为从该第一条数据记录开始按照确定的查询顺序查询得到的第一页面的数据记录。

客户端设备接收到该查询服务设备根据该第一查询请求发送的该第一页面中的数据记录后,将该第一页面中的数据记录呈现给用户,从而完成分页查询。

因此,本发明实施例的数据查询的方法,采用页面提示信息指示所请求页面中的第一数据记录,可以快速地定位到该第一数据记录进而获取所请求页面中的数据记录,实现快速地分页查询,从而能够提高分页查询的效率。

在本发明实施例中,页面提示信息可以在之前的查询过程中存储到客户端设备中,以便于后续的分页查询。下面结合图3进行说明。

图3示出了根据本发明另一实施例的数据查询的方法的示意性流程图。同样地,图3中的客户端设备可以为图1中的客户端设备101;查询服务设备可以为图1中的查询服务设备102。

图3的流程可以发生在图2的流程之前。

310,客户端设备向查询服务设备发送第二查询请求。

该第二查询请求包括查询条件。

也就是说,该第二查询请求为普通的查询请求,即不是分页查询请求。

320,查询服务设备根据该第二查询请求,向该客户端设备发送满足该查询条件的至少一个数据页面的数据记录,以及向该客户端设备发送该页面提示信息。

具体而言,查询服务设备根据该第二查询请求进行查询,向该客户端设备返回满足该查询条件的数据记录。返回的数据记录或页面的数量可以基于用户的请求。例如,若返回了两个页面后,用户不在需要继续查询,则查询结束。另外,在返回该第一数据记录后,例如,返回每个页面的第一条记录后,再向该客户端设备发送页面提示信息。可选地,页面提示信息可以在该第一数据记录之后发送,也可以与该第一数据记录同时发送,本发明对此并不限定。

可选地,页面提示信息可以是主动发送,也可以是基于请求而发送。

具体地,该客户端设备先向该查询服务设备发送页面提示信息请求,该页面提示信息请求用于请求该页面提示信息;该查询服务设备接收到该客户端设备发送的页面提示信息请求后,再向该客户端设备发送该页面提示信息。

可选地,该客户端设备可以在接收到该查询服务设备发送的该第一数据记录后,向该查询服务设备发送该页面提示信息请求。

330,客户端设备存储该页面提示信息。

客户端设备接收到该查询服务设备发送的该页面提示信息后,存储该页面提示信息。这样,在后续进行分页查询时,可以将该页面提示信息包括到第一查询请求中,从而实现前述本发明实施例中的分页查询。

下面将结合具体的例子详细描述本发明实施例。应注意,这些例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。

假设用户数据如下所示:

{ID=I0000,NAME=NM0000,ADDR=ADDR0000}

{ID=I0001,NAME=NM0001,ADDR=ADDR0001}

{ID=I0002,NAME=NM0002,ADDR=ADDR0002}

{ID=I0003,NAME=NM0003,ADDR=ADDR0003}

{ID=I0004,NAME=NM0004,ADDR=ADDR0004}

{ID=I0005,NAME=NM0005,ADDR=ADDR0005}

{ID=I0006,NAME=NM0006,ADDR=ADDR0006}

{ID=I0007,NAME=NM0007,ADDR=ADDR0007}

{ID=I0008,NAME=NM0008,ADDR=ADDR0008}

{ID=I0009,NAME=NM0009,ADDR=ADDR0009}

{ID=I0010,NAME=NM0010,ADDR=ADDR0010}

........................

{ID=I9998,NAME=NM9998,ADDR=ADDR9998}

{ID=I9999,NAME=NM9999,ADDR=ADDR9999}

字段ID为Primary Key,该字段可以唯一的决定一行数据记录,数据记录也可以称为记录。

查询条件(Condition)为Condition1:{ID=I00%},也就是说,ID=I0000~I0099的所有记录都是满足条件的记录。

假设每一页查询记录的条数为5。

1、客户端设备(例如可以通过其中的查询发起模块)基于查询条件Condition1:{ID=I00%}发起第1页查询时,查询服务设备根据该查询条件进行查询。例如,查询服务设备会为客户端设备初始化一个查询结果扫描器Scanner1,通过不断地调用查询结果扫描器的next(下一条)请求,返回如下五条记录:

{ID=I0000,NAME=NM0000,ADDR=ADDR0000}

{ID=I0001,NAME=NM0001,ADDR=ADDR0001}

{ID=I0002,NAME=NM0002,ADDR=ADDR0002}

{ID=I0003,NAME=NM0003,ADDR=ADDR0003}

{ID=I0004,NAME=NM0004,ADDR=ADDR0004}

客户端设备在读取第一条记录时,可通过调用查询服务设备的接口,获取第一条记录的页面提示信息(StartKeyHint):StartKeyHint_Page1,在StartKeyHint_Page1中可以包括如下信息:查询时所用到的索引信息,以及Primary Key信息{ID=I0000}。该信息被存储在客户端设备中。

查询结果扫描器的每一次next请求,指针都会移动一次。当第1页的5条记录读取完成之后,查询结果扫描器的指针定位到了第6条结果的开始位置。

假设要继续查询下一页的记录,则暂时缓存该Scanner1(否则,关闭该Scanner1,查询结束)。

2、假设基于前面的查询结果扫描器Scanner1,继续查询下5条记录的结果,即第2页的结果。通过不断地调用查询结果扫描器的next请求,返回如下五条记录:

{ID=I0005,NAME=NM0005,ADDR=ADDR0005}

{ID=I0006,NAME=NM0006,ADDR=ADDR0006}

{ID=I0007,NAME=NM0007,ADDR=ADDR0007}

{ID=I0008,NAME=NM0008,ADDR=ADDR0008}

{ID=I0009,NAME=NM0009,ADDR=ADDR0009}

客户端设备在读取第一条记录时,通过调用查询服务设备的接口,获取第一条记录的StartKeyHint信息:StartKeyHint_Page2,在StartKeyHint_Page2中可以包括如下信息:查询时所用到的索引信息,以及Primary Key信息{ID=I0005}。该信息被存储在客户端设备中。

当第2页的5条记录读取完成之后,查询结果扫描器Scanner1的指针定位到了第11条结果的开始位置。

假设要继续查询下一页的记录,则暂时缓存该Scanner1(否则,关闭该Scanner1,查询结束)。

3、假设基于前面的查询结果扫描器Scanner1,继续查询下5条记录的结果,即第3页的结果。通过不断地调用查询结果扫描器的next请求,返回如下五条记录:

{ID=I0010,NAME=NM0010,ADDR=ADDR0010}

{ID=I0011,NAME=NM0011,ADDR=ADDR0011}

{ID=I0012,NAME=NM0012,ADDR=ADDR0012}

{ID=I0013,NAME=NM0013,ADDR=ADDR0013}

{ID=I0014,NAME=NM0014,ADDR=ADDR0014}

客户端设备在读取第一条记录时,通过调用查询服务设备的接口,获取第一条记录的StartKeyHint信息:StartKeyHint_Page3,在StartKeyHint_Page3中可以包括如下信息:查询时所用到的索引信息,以及Primary Key信息{ID=I0010}。该信息被存储在客户端设备中。

当第3页的5条记录读取完成之后,查询结果扫描器Scanner1的指针定位到了第16条结果的开始位置。

如果此时不再继续查询下一页的记录,则关闭Scanner1,查询结束。

4、客户端设备基于同样的查询条件Condition1:{ID=I00%},以及分页提示信息StartKeyHint_Page2去查询已经查询过的第2页的数据。查询服务设备根据该查询条件和该分页提示信息StartKeyHint_Page2进行查询。例如,查询服务设备会为客户端设备初始化一个新的查询结果扫描器Scanner2,Scanner2在初始化时直接将指针定位在了StartKeyHint_Page2所指示的记录,即第6条记录的开始位置,从第6条记录开始,通过不断地调用查询结果扫描器的next请求,返回如下五条记录:

{ID=I0005,NAME=NM0005,ADDR=ADDR0005}

{ID=I0006,NAME=NM0006,ADDR=ADDR0006}

{ID=I0007,NAME=NM0007,ADDR=ADDR0007}

{ID=I0008,NAME=NM0008,ADDR=ADDR0008}

{ID=I0009,NAME=NM0009,ADDR=ADDR0009}

因此,通过上述方案,在查询已经查询过的页面的数据时,可以快速地定位到该页面,从而能够提高查询的效率。

应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

上文中详细描述了根据本发明实施例的数据查询的方法,下面将描述根据本发明实施例的查询服务设备、客户端设备和数据系统。

图4示出了根据本发明实施例的查询服务设备400的示意性框图。

该查询服务设备400可以对应于各方法实施例中的查询服务设备,可以具有方法中的查询服务设备的任意功能。

如图4所示,该查询服务设备400包括:

接收模块410,用于接收客户端设备发送的第一查询请求,该第一查询请求包括查询条件和页面提示信息,该页面提示信息用于指示第一页面中的第一数据记录,该第一页面为满足该查询条件的至少一个数据页面中的数据页面;

处理模块420,用于根据该页面提示信息,确定该第一数据记录,以及根据该第一数据记录和该查询条件,确定该第一页面中的数据记录;

发送模块430,用于向该客户端设备发送该第一页面中的数据记录。

本发明实施例的查询服务设备,根据页面提示信息可以快速地定位到第一页面中的第一数据记录进而获取第一页面中的数据记录,实现快速地分页查询,从而能够提高分页查询的效率。

可选地,该第一数据记录为该第一页面中的第一条数据记录。

可选地,该发送模块430具体用于,向该客户端设备发送从该第一数据记录开始的,满足该查询条件的预定数量的数据记录,该预定数量为一个页面中的数据记录的数量。

可选地,该页面提示信息包括该第一数据记录的主键信息;或者,

该页面提示信息包括该第一数据记录的主键信息和与该查询条件对应的索引信息。

可选地,该接收模块410还用于,在接收该客户端设备发送的该第一查询请求之前,接收该客户端设备发送的第二查询请求,该第二查询请求包括该查询条件;

该处理模块420还用于,根据该第二查询请求,确定满足该查询条件的至少一个数据页面的数据记录;

该发送模块430还用于,向该客户端设备发送满足该查询条件的至少一个数据页面的数据记录,以及向该客户端设备发送该页面提示信息。

可选地,该接收模块410还用于,接收该客户端设备发送的页面提示信息请求,该页面提示信息请求用于请求该页面提示信息。

根据本发明实施例的查询服务设备400可对应于根据本发明实施例的数据查询的方法中的查询服务设备,并且查询服务设备400中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。

图5示出了根据本发明实施例的客户端设备500的示意性框图。

该客户端设备500可以对应于各方法实施例中的客户端设备,可以具有方法中的客户端设备的任意功能。

如图5所示,该客户端设备包括:

发送模块510,用于向查询服务设备发送第一查询请求,该第一查询请求包括查询条件和页面提示信息,该页面提示信息用于指示第一页面中的第一数据记录,该第一页面为满足该查询条件的至少一个数据页面中的数据页面;

接收模块520,用于接收该查询服务设备根据该第一查询请求发送的该第一页面中的数据记录。

本发明实施例的客户端设备,采用页面提示信息指示所请求页面中的第一数据记录,可以实现快速地分页查询,从而能够提高分页查询的效率。

可选地,该第一数据记录为该第一页面中的第一条数据记录。

可选地,该第一页面中的数据记录为从该第一数据记录开始的,满足该查询条件的预定数量的数据记录,该预定数量为一个页面中的数据记录的数量。

可选地,该页面提示信息包括该第一数据记录的主键信息;或者,

该页面提示信息包括该第一数据记录的主键信息和与该查询条件对应的索引信息。

可选地,该发送模块510还用于,在向该查询服务设备发送该第一查询请求之前,向该查询服务设备发送第二查询请求,该第二查询请求包括该查询条件;

该接收模块520还用于,接收该查询服务设备根据该第二查询请求发送的满足该查询条件的至少一个数据页面的数据记录,以及接收该查询服务设备发送该页面提示信息;

该客户端设备500还包括:

处理模块530,用于存储该页面提示信息。

可选地,该发送模块510还用于,向该查询服务设备发送页面提示信息请求,该页面提示信息请求用于请求该页面提示信息。

根据本发明实施例的客户端设备500可对应于根据本发明实施例的数据查询的方法中的客户端设备,并且客户端设备500中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。

图6示出了本发明的又一实施例提供的查询服务设备的结构,包括至少一个处理器602(例如CPU),至少一个网络接口605或者其他通信接口,存储器606,和至少一个通信总线603;通信总线603用于实现这些部件之间的连接通信。处理器602用于执行存储器606中存储的可执行模块,例如计算机程序。存储器606可能包含高速随机存取存储器(Random Access Memory,RAM),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口605(可以是有线或者无线)实现与至少一个其他网元之间的通信连接。

在一些实施方式中,存储器606存储了程序6061,处理器602执行程序6061,用于执行前述本发明实施例的各个方法。

图7示出了本发明的又一实施例提供的客户端设备的结构,包括至少一个处理器702(例如CPU),至少一个网络接口705或者其他通信接口,存储器706,和至少一个通信总线703;通信总线703用于实现这些部件之间的连接通信。处理器702用于执行存储器706中存储的可执行模块,例如计算机程序。存储器706可能包含高速随机存取存储器(Random Access Memory,RAM),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个网络接口705(可以是有线或者无线)实现与至少一个其他网元之间的通信连接。

在一些实施方式中,存储器706存储了程序7061,处理器702执行程序7061,用于执行前述本发明实施例的各个方法。

本发明实施例还提供了一种数据系统。如图8所示,数据系统800包括:

查询服务设备810,该查询服务设备810可以是前述本发明实施例中的查询服务设备;以及

数据库820,该数据库820中包括待查询的数据。

该实施例中的数据系统可以对应于图1中的查询服务设备102和数据库103组成的数据系统,用于处理客户端设备的查询请求并向客户端设备返回查询结果。

可选地,如图9所示,该数据系统800还可以包括:

客户端设备830,该客户端设备830可以是前述本发明实施例中的客户端设备。

该实施例中的数据系统可以对应于图1中的客户端设备101、查询服务设备102和数据库103组成的数据系统。

应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1