This application discloses a paging method and device across multiple databases. Including a specific embodiment of the method: receiving the client to the M database paging request paging request content, including: page No. N, paging record and K number of query conditions, including M, N, K is a natural number; the number of records for each database, the number of each line number records taken for paging No. 1 N paging K record in the record number corresponding to the last row in the database records; according to each number records from the number in the corresponding database in the beginning of the next line satisfy the query conditions for K and obtained in each recording; K database records, and in accordance with predetermined sorting conditions on the combined M x K rows are sorted; get sorted before the K line paging record as a result set, and respond to messages sent to the client, including the result set paging response information. This method realizes the pagination display of multi database content in real time.
【技术实现步骤摘要】
跨多数据库的分页方法和装置
本申请涉及计算机
,具体涉及数据库分页
,尤其涉及一种跨多数库的分页方法和装置。
技术介绍
随着互联网技术的发展产生了很多大型Web应用,通过这些嵌入在浏览器中的大型Web应用,用户可以浏览存储于Web服务器中的各种数据。同时,在这些大型web应用中,数据的生产和消费往往涉及到多种数据库。有时为了响应用户的需求,需要将不同数据库的数据合并后展示给用户,同时基于性能和方便用户查看,需要对这些合并后的数据分页处理。目前采用的对多数据库分页的决定方案为,使用一个数据合并器,定时抽取多个数据库的数据,将其合并后存入特定的合并数据库中,当有客户端发出分页请求时,再对合并数据库进行分页查询。从本质上讲,这依然是对单数据库进行分页。同时,这种数据合并分页方式实时性差,且需要增加额外的存储资源来存储聚合数据。
技术实现思路
本申请的目的在于提出一种跨多数据库的分页方法和装置,来解决以上
技术介绍
部分提到的技术问题。第一方面,本申请提供了一种多数据的分页方法,方法包括:接收客户端对M个数据库内容的分页请求,分页请求包括:分页号N、分页记录数K以及查 ...
【技术保护点】
一种跨多数据库的分页方法,其特征在于,所述方法包括:接收客户端对M个数据库内容的分页请求,所述分页请求包括:分页号N、分页记录数K以及查询条件,其中M,N,K均为自然数;获取各所述数据库的条数记录,其中,每个所述条数记录为分页号为N‑1的分页的K行记录中在该条数记录所对应的数据库中所取的最后一行记录的行号;根据每个条数记录在与之对应的数据库中从所述条数记录的下一行开始取满足所述查询条件的K行记录;合并在各所述数据库中取得的所述K行记录,并按照预定排序条件对合并后的M×K行记录进行排序;取排序后前K行记录作为分页结果集,并向所述客户端发送响应信息,所述响应信息包括所述分页结果集。
【技术特征摘要】
1.一种跨多数据库的分页方法,其特征在于,所述方法包括:接收客户端对M个数据库内容的分页请求,所述分页请求包括:分页号N、分页记录数K以及查询条件,其中M,N,K均为自然数;获取各所述数据库的条数记录,其中,每个所述条数记录为分页号为N-1的分页的K行记录中在该条数记录所对应的数据库中所取的最后一行记录的行号;根据每个条数记录在与之对应的数据库中从所述条数记录的下一行开始取满足所述查询条件的K行记录;合并在各所述数据库中取得的所述K行记录,并按照预定排序条件对合并后的M×K行记录进行排序;取排序后前K行记录作为分页结果集,并向所述客户端发送响应信息,所述响应信息包括所述分页结果集。2.根据权利要求1所述的方法,其特征在于,所述获取各所述数据库的条数记录包括从条数记录指针寄存器中获取对应于每一个所述数据库的条数记录。3.根据权利要求1所述的方法,其特征在于,所述M个数据库的类型不相同;以及所述根据每个条数记录在与之对应的数据库中从所述条数记录的下一行开始取满足所述查询条件的K行记录,包括:根据每个数据库的类型及条数记录,构造与该数据库类型对应的结构化分页查询语句并发送至对应数据库以从该数据库中获取K行记录。4.根据权利要求3所述的方法,其特征在于,所述M个数据库的各行数据至少包括相同的排序条件。5.根据权利要求1所述的方法,其特征在于所述方法还包括根据所述分页结果集中各数据库中的最后一条记录的行号更新所述各数据库的条数记录。6.一种跨多数据库的分页装置,...
【专利技术属性】
技术研发人员:陈俊,
申请(专利权)人:北京京东尚科信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。