基于队列的数据库读取方法、装置、设备及存储介质与流程

文档序号:33113014发布日期:2023-02-01 02:25阅读:29来源:国知局
基于队列的数据库读取方法、装置、设备及存储介质与流程

1.本技术涉及数据处理技术领域,尤其涉及一种基于队列的数据库读取方法、 装置、计算机设备及存储介质。


背景技术:

2.在日常大批量业务处理中,数据库交互处理是比较常见的业务处理方式, 日益高速发展的业务对大批量的数据处理的时效性,稳定性提出了更高的要求, 所以就需要有能够快速的读取数据库的解决方案。传统业务常见方案数据库拆 分读取处理,把数据库数据按记录条数拆分多个,多线程并发处理,该方案的 不足之处,可能数据分布不均匀,各分片处理进度不一至,会有由于某一分片 处理比较慢,导致整个业务流程缓慢,存在数据库读取效率低下的问题。因此, 如何解决数据库读取效率低下成为了目前亟需解决的问题。


技术实现要素:

3.本技术提供了一种基于队列的数据库读取方法、装置、计算机设备及存储 介质,以解决数据库读取效率低下的技术问题。
4.第一方面,本技术提供了一种基于队列的数据库读取方法,所述方法包括:
5.接收到读取数据库的指令时,获取至少一个目标数据库的数据记录,并基 于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页;将所 述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述线程进行 业务处理;判断各所述线程的当前业务是否为所述队列中最后一个所述数据记 录;若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业务处 理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。
6.进一步地,接收到读取数据库的指令时,获取至少一个目标数据库的数据 记录,并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记 录页,对所述数据记录页进行编号,包括:
7.设置每一所述数据记录页保存的所述数据记录的单页数量,并获取所述数 据记录的数据记录总数;
8.基于所述单页数量与所述数据记录总数,确定所述数据记录页的数量;
9.进一步地,基于所述单页数量与所述数据记录总数,确定所述数据记录页 的数量之后,包括:
10.将所述数据记录页进行编号,并基于所述编号生成所述队列;
11.进一步地,若所述当前业务为所述队列中最后一个所述数据记录,则通过 所述业务处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库 之前,包括:
12.若所述当前业务不是所述队列中最后一个所述数据记录,则通过所述业务 处理模块继续读取所述数据记录页;
13.进一步地,将所述数据记录页送入业务处理模块的各线程,并生成队列, 启动各
所述线程进行业务处理之后,还包括:
14.记录处理每一所述数据记录页的记录时间,并将预设时间阈值与所述记录 时间进行比较;
15.若所述记录时间大于所述预设阈值,则发出告警信号,并将当前处理的数 据记录页标记为异常;
16.进一步地,接收到读取数据库的指令时,获取至少一个目标数据库的数据 记录,并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记 录页之前,还包括:
17.通过所述数据库设置所述数据记录的优先级,并按照所述优先级,划分所 述数据记录,生成所述数据记录页;
18.进一步地,数据库读取方法还包括:
19.当通过所述业务处理模块读取完成一所述数据记录页时,则向所述数据库 发送一次更新指令。
20.第二方面,本技术还提供了一种基于队列的数据库读取装置,所述装置包 括:
21.业务处理模块,用于将所述数据记录页送入业务处理模块的各线程,并生 成队列,启动各所述线程进行业务处理;
22.当前业务判断模块,用于判断各所述线程的当前业务是否为所述队列中最 后一个所述数据记录;
23.业务状态反馈模块,用于若所述当前业务为所述队列中最后一个所述数据 记录,则通过所述业务处理模块将业务状态反馈至所述数据库中,完成读取所 述目标数据库。
24.第三方面,本技术还提供了一种计算机设备,所述计算机设备包括存储器 和处理器;所述存储器用于存储计算机程序;所述处理器,用于执行所述计算 机程序并在执行所述计算机程序时实现如上述的基于队列的数据库读取方法。
25.第四方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存 储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现 如上述的基于队列的数据库读取方法。
26.本技术公开了一种基于队列的数据库读取方法、装置、计算机设备及存储 介质,接收到读取数据库的指令时,获取至少一个目标数据库的数据记录,并 基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页;将 所述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述线程进 行业务处理;判断各所述线程的当前业务是否为所述队列中最后一个所述数据 记录;若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业务 处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。通过上 述方式,通过将数据库中的数据记录按照一定的规则分页后,将数据记录页按 照编号生成队列,由各线程分别处理,并判断每一次处理的业务是否为最后一 个数据记录,在当前处理的业务为最后一个数据记录时,完成读取目标数据库, 保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性,解 决了目前各线程处理业务进度的可控性低下的技术问题。
附图说明
27.为了更清楚地说明本技术实施例技术方案,下面将对实施例描述中所需要 使用
的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实 施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
28.图1是本技术的实施例提供的一种基于队列的数据库读取方法的第一实施 例示意流程图;
29.图2是本技术的实施例提供的一种基于队列的数据库读取方法的第二实施 例示意流程图;
30.图3是本技术的实施例提供的一种基于队列的数据库读取方法的第三实施 例示意流程图;
31.图4为本技术的实施例提供的一种基于队列的数据库读取装置的示意性框 图;
32.图5为本技术的实施例提供的一种计算机设备的结构示意性框图。
具体实施方式
33.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部 的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳 动前提下所获得的所有其他实施例,都属于本技术保护的范围。
34.附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤, 也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部 分合并,因此实际执行的顺序有可能根据实际情况改变。
35.应当理解,在此本技术说明书中所使用的术语仅仅是出于描述特定实施例 的目的而并不意在限制本技术。如在本技术说明书和所附权利要求书中所使用 的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个
”ꢀ
及“该”意在包括复数形式。
36.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或
”ꢀ
是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括 这些组合。
37.本技术的实施例提供了一种基于队列的数据库读取方法、装置、计算机设 备及存储介质。其中,该基于队列的数据库读取方法可以应用于服务器中,保 障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性,解决 了目前各线程处理业务进度的可控性低下的技术问题。
38.其中,该服务器可以为独立的服务器,也可以为服务器集群。
39.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下, 下述的实施例及实施例中的特征可以相互组合。
40.请参阅图1,图1是本技术的实施例提供的一种基于队列的数据库读取方法 的示意流程图。该基于队列的数据库读取方法可应用于服务器中,用于将数据 库中的数据记录生成记录页,并将记录页生成队列进行数据库读取,保障了各 线程处理业务的进度一致,提高了各线程处理业务进度的可控性,解决了目前 各线程处理业务进度的可控性低下的技术问题。
41.如图1所示,该基于队列的数据库读取方法具体包括步骤s101至步骤s104。
42.步骤s101、接收到读取数据库的指令时,获取至少一个目标数据库的数据 记录,
并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记 录页;
43.步骤s102、将所述数据记录页送入业务处理模块的各线程,并生成队列, 启动各所述线程进行业务处理;
44.步骤s103、判断各所述线程的当前业务是否为所述队列中最后一个所述数 据记录;
45.步骤s104、若所述当前业务为所述队列中最后一个所述数据记录,则通过 所述业务处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。
46.具体实施例中,任务开始读取符合业务的数据库总记录条数,然后根据每 次分页读取的页数计算所需的页数,比如中记录条数110条,每20条记录一页, 则共有n=110/20+1=6页数据。
47.基于图1所示实施例,在本实施例中,步骤s101之前,包括:
48.通过所述数据库设置所述数据记录的优先级,并按照所述优先级,划分所 述数据记录,生成所述数据记录,并根据不同的标注信息,将标注信息相同的 数据划分至同一个数据记录页中。
49.本实施例中,目前通常是将数据分批导入数据库中,因此一个数据库中会 包含多个批次的数据。因此,为了能够更好的区分不同批次的数据,可以将不 同批次的数据标注不同的标识信息,使不同批次的数据能够与不同的标识信息 一一对应,实现区分不同批次的数据。
50.例如,可以将不同的批次以时间为导向,属于同一天的数据添加同一个标 识信息,则可以将不同日期的数据区分开。标识信息可以是任何能够相互区别 的字符,可以是不同时间值,也可以是数字序列、字母序列或是数字和字母结 合等,例如,将第一批次的数据标识为a1,第二批次的数据标识为a2,以此类 推。
51.另外,还可以通过设置时间阈值作为间隔,并通过业务读取模块每间隔一 个时间阈值就进行一次自检,检查是否存在漏读取或错误读取的数据记录页, 并在检测到存在漏读取或错误读取时及时发出告警信息,以通过认为措施进行 补救。
52.本实施例公开了一种基于队列的数据库读取方法、装置、计算机设备及存 储介质,接收到读取数据库的指令时,获取至少一个目标数据库的数据记录, 并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页; 将所述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述线程 进行业务处理;判断各所述线程的当前业务是否为所述队列中最后一个所述数 据记录;若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业 务处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。通过 上述方式,通过将数据库中的数据记录按照一定的规则分页后,将数据记录页 按照编号生成队列,由各线程分别处理,并判断每一次处理的业务是否为最后 一个数据记录,在当前处理的业务为最后一个数据记录时,完成读取目标数据 库,保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性, 解决了目前各线程处理业务进度的可控性低下的技术问题。
53.基于图1所示实施例,在本实施例中,步骤s104之前,包括:
54.若所述当前业务不是所述队列中最后一个所述数据记录,则通过所述业务 处理模块继续读取所述数据记录页。
55.本实施例中,基于设置的每个数据记录页的记录数,根据当前业务的编号 进行判断当前业务是不是队列中的最后一个数据记录。
56.另外,我们知道队列queue是一种先进先出的数据结构,所以消息时也是 按照顺序来排列的。比如生产者发送消息1,2,3...对于消费者就会按照1,2,3... 的顺序来消费。但是偶尔也会出现消息的顺序不对的情况,因此需要将全部数 据按照编号依次排列。
57.本实施例公开了一种基于队列的数据库读取方法、装置、计算机设备及存 储介质,接收到读取数据库的指令时,获取至少一个目标数据库的数据记录, 并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页; 将所述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述线程 进行业务处理;判断各所述线程的当前业务是否为所述队列中最后一个所述数 据记录;若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业 务处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。通过 上述方式,通过将数据库中的数据记录按照一定的规则分页后,将数据记录页 按照编号生成队列,由各线程分别处理,并判断每一次处理的业务是否为最后 一个数据记录,在当前处理的业务为最后一个数据记录时,完成读取目标数据 库,保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性, 解决了目前各线程处理业务进度的可控性低下的技术问题。
58.请参阅图2,图2是本技术的实施例提供的一种基于队列的数据库读取方法 的第二实施例示意流程图。该基于队列的数据库读取方法可应用于服务器中, 用于将数据库中的数据记录生成记录页,并将记录页生成队列进行数据库读取, 保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性,解 决了目前各线程处理业务进度的可控性低下的技术问题。
59.如图2所示,基于上述图1所示实施例,其中步骤s101具体包括:
60.步骤s1011、设置每一所述数据记录页保存的所述数据记录的单页数量,并 获取所述数据记录的数据记录总数;
61.步骤s1012、基于所述单页数量与所述数据记录总数,确定所述数据记录页 的数量。
62.具体实施例中,步骤s1012具体包括:
63.将所述数据记录页进行编号,并基于所述编号生成所述队列。
64.本实施例中,任务开始读取符合业务的数据库总记录条数,然后根据每次 分页读取的页数计算所需的页数,比如中记录条数110条,每20条记录一页, 则共有n=110/20+1=6页数据。然后把页数从1到n,放到有界队列中,如上:1, 2,3,4,5,6。
65.消息队列是在两个不相关进程间传递数据的一种简单、高效方式,消息队 列独立于发送进程、接受进程而存在。消息队列提供了一种从一个进程向另一 个进程发送一个数据块的方法。每个数据块都被认为是一个管道,接收进程可 以独立地接收含有不同管道的数据结构。我们可以通过发送消息来避免命名管 道的同步和阻塞问题。消息队列与命名管道一样,每个数据块都有一个最大长 度的限制。我们可以将每个数据块当作是一种消息类型(频道),发送和接收 的内容就是这个类型(频道)对应的消息(节目),每个类型(频道)相当于 一个独立的管道,相互之间互不影响。
66.本实施例公开了一种基于队列的数据库读取方法、装置、计算机设备及存 储介
质,接收到读取数据库的指令时,获取至少一个目标数据库的数据记录, 并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页; 将所述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述线程 进行业务处理;判断各所述线程的当前业务是否为所述队列中最后一个所述数 据记录;若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业 务处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。通过 上述方式,通过将数据库中的数据记录按照一定的规则分页后,将数据记录页 按照编号生成队列,由各线程分别处理,并判断每一次处理的业务是否为最后 一个数据记录,在当前处理的业务为最后一个数据记录时,完成读取目标数据 库,保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性, 解决了目前各线程处理业务进度的可控性低下的技术问题请参阅图3,图3是本 申请的实施例提供的一种基于队列的数据库读取方法的第三实施例示意流程图。 该基于队列的数据库读取方法可应用于服务器中,用于将数据库中的数据记录 生成记录页,并将记录页生成队列进行数据库读取,保障了各线程处理业务的 进度一致,提高了各线程处理业务进度的可控性,解决了目前各线程处理业务 进度的可控性低下的技术问题。
67.如图3所示,基于上述图1所示实施例,其中步骤s102之后,还包括:
68.步骤s1021、记录处理每一所述数据记录页的记录时间,并将预设时间阈值 与所述记录时间进行比较;
69.步骤s1022、若所述记录时间大于所述预设阈值,则发出告警信号,并将当 前处理的数据记录页标记为异常。
70.本实施例中,由于数据库中包含的数据量是巨大的,可能会由于数据库的 容量大导致处理业务时出现卡顿的现象,严重的会导致死机,因此当处理一数 据记录的时间超过预设的时间阈值时,则判定出现了异常情况,并将当前处理 的数据记录页标记为异常,并且将这个信息同步至数据库。
71.本实施例公开了一种基于队列的数据库读取方法、装置、计算机设备及存 储介质,接收到读取数据库的指令时,获取至少一个目标数据库的数据记录, 并基于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页; 将所述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述线程 进行业务处理;判断各所述线程的当前业务是否为所述队列中最后一个所述数 据记录;若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业 务处理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。通过 上述方式,通过将数据库中的数据记录按照一定的规则分页后,将数据记录页 按照编号生成队列,由各线程分别处理,并判断每一次处理的业务是否为最后 一个数据记录,在当前处理的业务为最后一个数据记录时,完成读取目标数据 库,保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性, 解决了目前各线程处理业务进度的可控性低下的技术问题。
72.请参阅图3,图3是本技术的实施例提供的一种基于队列的数据库读取方法 的第三实施例示意流程图。该基于队列的数据库读取方法可应用于服务器中, 用于将数据库中的数据记录生成记录页,并将记录页生成队列进行数据库读取, 保障了各线程处理业务的进度一致,提高了各线程处理业务进度的可控性,解 决了目前各线程处理业务进度的可控性低下的技术问题。
73.基于上述全部实施例,本数据库读取方法还包括:
74.当通过所述业务处理模块读取完成一所述数据记录页时,则向所述数据库 发送一次更新指令。
75.本实施例中,基于缓存一致性协议,当用voliate关键字修饰的变量改动 时,cpu(central processing unit,中央处理器)会通知其他线程与数据库, 缓存已被修改,需要更新读取。
76.线程只是用于分配单个处理器的处理时间的一种工具。但假如操作系统本 身支持多个处理器,那么每个线程都可分配给一个不同的处理器,真正进入“并 行运算”状态。从程序设计语言的角度看,多线程操作最有价值的特性之一就 是程序员不必关心到底使用了多少个处理器。程序在逻辑意义上被分割为数个 线程;假如机器本身安装了多个处理器,那么程序会运行得更快,毋需作出任 何特殊的调校。根据前面的论述,大家可能感觉线程处理非常简单。但必须注 意一个问题:共享资源。如果有多个线程同时运行,而且它们试图访问相同的 资源,就会遇到一个问题。举个例子来说,两个线程不能将信息同时发送给一 台打印机。为解决这个问题,对那些可共享的资源来说(比如打印机),它们 在使用期间必须进入锁定状态。所以一个线程可将资源锁定,在完成了它的任 务后,再释放这个锁,使其他线程可以接着使用同样的资源。
77.请参阅图4,图4是本技术的实施例提供一种基于队列的数据库读取装置的 示意性框图,该基于队列的数据库读取装置用于执行前述的基于队列的数据库 读取方法。其中,该基于队列的数据库读取装置可以配置于服务器。
78.如图4所示,该基于队列的数据库读取装置,包括:
79.数据记录页生成模块10,用于接收到读取数据库的指令时,获取至少一个 目标数据库的数据记录,并基于预设划分规则,将所述数据记录进行划分,生 成至少一个数据记录页;
80.业务处理模块20,用于将所述数据记录页送入业务处理模块的各线程,并 生成队列,启动各所述线程进行业务处理;
81.当前业务判断模块30,用于判断各所述线程的当前业务是否为所述队列中 最后一个所述数据记录;
82.业务状态反馈模块40,用于若所述当前业务为所述队列中最后一个所述数 据记录,则通过所述业务处理模块将业务状态反馈至所述数据库中,完成读取 所述目标数据库。
83.进一步地,所述数据记录页生成模块10具体包括:
84.数据记录总数获取单元,用于设置每一所述数据记录页保存的所述数据记 录的单页数量,并获取所述数据记录的数据记录总数;
85.数据记录页计算单元,用于基于所述单页数量与所述数据记录总数,确定 所述数据记录页的数量。
86.进一步地,所述当前业务判断模块30还包括:
87.当前业务判断单元,用于若所述当前业务不是所述队列中最后一个所述数 据记录,则通过所述业务处理模块继续读取所述数据记录页。
88.进一步地,所述基于队列的数据库读取装置还包括队列生成模块,具体包 括队列
生成单元,用于将所述数据记录页进行编号,并基于所述编号生成所述 队列。
89.进一步地,所述基于队列的数据库读取装置还包括时间记录模块,具体包 括:
90.时间比较单元,用于记录处理每一所述数据记录页的记录时间,并将预设 时间阈值与所述记录时间进行比较;
91.异常标记单元,用于若所述记录时间大于所述预设阈值,则发出告警信号, 并将当前处理的数据记录页标记为异常。
92.进一步地,所述基于队列的数据库读取装置还包括优先级设置模块,具体 包括:
93.优先级设置单元,用于通过所述数据库设置所述数据记录的优先级,并按 照所述优先级,划分所述数据记录,生成所述数据记录页。
94.进一步地,所述基于队列的数据库读取装置还包括更新指令发送模块,具 体包括:
95.更新指令发送单元,用于当通过所述业务处理模块读取完成一所述数据记 录页时,则向所述数据库发送一次更新指令。
96.需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便 和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述方法实施例 中的对应过程,在此不再赘述。
97.上述的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图5 所示的计算机设备上运行。
98.请参阅图5,图5是本技术的实施例提供的一种计算机设备的结构示意性框 图。该计算机设备可以是服务器。
99.参阅图5,该计算机设备包括通过系统总线连接的处理器、存储器和网络接 口,其中,存储器可以包括非易失性存储介质和内存储器。
100.非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序 指令,该程序指令被执行时,可使得处理器执行任意一种基于队列的数据库读 取方法。
101.处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
102.内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机 程序被处理器执行时,可使得处理器执行任意一种基于队列的数据库读取方法。
103.该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可 以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并 不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可 以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部 件布置。
104.应当理解的是,处理器可以是中央处理单元(central processing unit,cpu), 该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor, dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编 程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、 分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处 理器或者该处理器也可以是任何常规的处理器等。
105.其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程 序,以实现如下步骤:
106.接收到读取数据库的指令时,获取至少一个目标数据库的数据记录,并基 于预设划分规则,将所述数据记录进行划分,生成至少一个数据记录页;
107.将所述数据记录页送入业务处理模块的各线程,并生成队列,启动各所述 线程进行业务处理;
108.判断各所述线程的当前业务是否为所述队列中最后一个所述数据记录;
109.若所述当前业务为所述队列中最后一个所述数据记录,则通过所述业务处 理模块将业务状态反馈至所述数据库中,完成读取所述目标数据库。
110.在一个实施例中,接收到读取数据库的指令时,获取至少一个目标数据库 的数据记录,并基于预设划分规则,将所述数据记录进行划分,生成至少一个 数据记录页,用于实现:
111.设置每一所述数据记录页保存的所述数据记录的单页数量,并获取所述数 据记录的数据记录总数;
112.基于所述单页数量与所述数据记录总数,确定所述数据记录页的数量。
113.在一个实施例中,基于所述单页数量与所述数据记录总数,确定所述数据 记录页的数量之后,用于实现:
114.将所述数据记录页进行编号,并基于所述编号生成所述队列。
115.在一个实施例中,若所述当前业务为所述队列中最后一个所述数据记录, 则通过所述业务处理模块将业务状态反馈至所述数据库中,完成读取所述目标 数据库之前,用于实现:
116.若所述当前业务不是所述队列中最后一个所述数据记录,则通过所述业务 处理模块继续读取所述数据记录页。
117.在一个实施例中,将所述数据记录页送入业务处理模块的各线程,并生成 队列,启动各所述线程进行业务处理之后,还用于实现:
118.记录处理每一所述数据记录页的记录时间,并将预设时间阈值与所述记录 时间进行比较;
119.若所述记录时间大于所述预设阈值,则发出告警信号,并将当前处理的数 据记录页标记为异常。
120.在一个实施例中,接收到读取数据库的指令时,获取至少一个目标数据库 的数据记录,并基于预设划分规则,将所述数据记录进行划分,生成至少一个 数据记录页之前,还用于实现:
121.通过所述数据库设置所述数据记录的优先级,并按照所述优先级,划分所 述数据记录,生成所述数据记录页。
122.在一个实施例中,数据库读取方法还用于实现:
123.当通过所述业务处理模块读取完成一所述数据记录页时,则向所述数据库 发送一次更新指令。
124.本技术的实施例中还提供一种计算机可读存储介质,所述计算机可读存储 介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所 述程序指令,实现本技术实施例提供的任一项基于队列的数据库读取方法。
125.其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内 部存
储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也 可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式 硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd) 卡,闪存卡(flash card)等。
126.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于 此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到 各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。 因此,本技术的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1