CN110008243B - 一种数据表处理方法及装置 - Google Patents

一种数据表处理方法及装置 Download PDF

Info

Publication number
CN110008243B
CN110008243B CN201910225950.7A CN201910225950A CN110008243B CN 110008243 B CN110008243 B CN 110008243B CN 201910225950 A CN201910225950 A CN 201910225950A CN 110008243 B CN110008243 B CN 110008243B
Authority
CN
China
Prior art keywords
data
data table
target
total
amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910225950.7A
Other languages
English (en)
Other versions
CN110008243A (zh
Inventor
曾伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN201910225950.7A priority Critical patent/CN110008243B/zh
Publication of CN110008243A publication Critical patent/CN110008243A/zh
Application granted granted Critical
Publication of CN110008243B publication Critical patent/CN110008243B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种数据表处理方法及装置,涉及数据处理技术领域,包括:记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系;接收请求端发送的第一查询请求,根据所述第一查询请求中携带的目标标识,从记录的对应关系中查询与所述目标标识对应的目标数据表的数据总量;接收所述请求端发送的第二查询请求,根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据并响应给所述请求端,解决了现有技术中存在的数据查询和展示过程的处理效率较低,很难应用在实时性较高的场景下的技术问题。

Description

一种数据表处理方法及装置
技术领域
本申请涉及数据处理技术领域,尤其是涉及一种数据表处理方法及装置。
背景技术
数据表一般为资料、文件等提供一个详细具体的数据资料,方便人们使用和工作时能够清楚方便的获得相应的数据。
目前,服务器在接收到用户的数据查询请求时,可以查询数据表中的数据并展示给用户,示例性的,对于Oracle类型的数据表来说,具体的查询和展示流程包括:在接收到用户的查询请求时,首先遍历数据表中的数据总量,然后根据每页可展示的数据量和数据总量,将数据表中的数据分成至少一页展示,进而将数据所在的页面展示给用户。
但是,在数据表中的数据量较多的情况下,采用上述方式遍历数据总量以及确定分页页数的过程耗费的时间较长,从而影响了数据查询和展示过程的处理效率,很难适用在实时性较高的场景下。
发明内容
有鉴于此,本申请的目的在于提供一种数据表处理方法及装置,以解决现有技术中存在的数据查询和展示过程的处理效率较低,很难应用在实时性较高的场景下的技术问题。
第一方面,本申请实施例提供了一种数据表处理方法,包括:
记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系;
接收请求端发送的第一查询请求,根据所述第一查询请求中携带的目标标识,从记录的对应关系中查询与所述目标标识对应的目标数据表的数据总量;
接收所述请求端发送的第二查询请求,根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据并响应给所述请求端。
本申请的一些实施例中,所述记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系,包括:
将从多个业务数据库中抽取的业务数据记录在所述管理数据库中的至少一个数据表中;
监测所述管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和所述数据表的标识对应记录。
本申请的一些实施例中,所述监测所述管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和所述数据表的标识对应记录,包括:
若监测到所述管理数据库中第一数据表的数据总量发生变化,则更新与所述第一数据表的标识对应的数据总量。
本申请的一些实施例中,所述监测到所述管理数据库中第一数据表的数据总量发生变化,包括:
为所述管理数据库中每个数据表建立第一触发器和第二触发器;
若所述管理数据库中所述第一数据表对应的第一触发器检测到针对所述第一数据表的数据添加操作,和/或,所述第一数据表对应的第二触发器检测到针对所述第一数据表的数据删除操作,则确定所述第一数据表的数据总量发生变化。
本申请的一些实施例中,根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据,包括:
将所述目标数据表的数据总量与所述目标数据表的预设显示总页数进行相除,得到所述目标数据表中每页显示的数据量;
将所述目标页数与所述每页显示的数据量进行相乘,得到待处理数据量;
由所述目标数据表的表头开始,依次从所述目标数据表中选取数据,直至选取的数据量达到所述待处理数据量;
从选取的数据中确定与所述目标页数匹配的数据。
第二方面,本申请实施例还提供一种数据表处理装置,包括:
记录模块,用于记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系;
接收模块,用于接收请求端发送的第一查询请求;
查询模块,用于根据所述第一查询请求中携带的目标标识,从记录的对应关系中查询与所述目标标识对应的目标数据表的数据总量;
所述接收模块还用于接收所述请求端发送的第二查询请求;
响应模块,用于根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据并响应给所述请求端。
本申请的一些实施例中,所述记录模块,具体用于:
将从多个业务数据库中抽取的业务数据记录在所述管理数据库中的至少一个数据表中;
监测所述管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和所述数据表的标识对应记录。
本申请的一些实施例中,所述记录模块还用于:
若监测到所述管理数据库中第一数据表的数据总量发生变化,则更新与所述第一数据表的标识对应的数据总量。
本申请的一些实施例中,所述记录模块还用于:
为所述管理数据库中每个数据表建立第一触发器和第二触发器;
若所述管理数据库中所述第一数据表对应的第一触发器检测到针对所述第一数据表的数据添加操作,和/或,所述第一数据表对应的第二触发器检测到针对所述第一数据表的数据删除操作,则确定所述第一数据表的数据总量发生变化。
本申请的一些实施例中,所述响应模块,具体用于:
将所述目标数据表的数据总量与所述目标数据表的预设显示总页数进行相除,得到所述目标数据表中每页显示的数据量;
将所述目标页数与所述每页显示的数据量进行相乘,得到待处理数据量;
由所述目标数据表的表头开始,依次从所述目标数据表中选取数据,直至选取的数据量达到所述待处理数据量;
从选取的数据中确定与所述目标页数匹配的数据。
第三方面,本申请实施例还提供一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述如第一方面所述的数据表处理方法的步骤。
第四方面,本申请实施例还提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行如第一方面所述的数据表处理方法。
本申请实施例提供的上述数据表处理方法及装置中,通过预先记录数据表的数据总量与数据表的标识之间的对应关系,便能够在请求端请求查询目标数据表的目标页数时,基于记录的对应关系快速查询出请求查询的目标数据表的数据总量,而无需再耗费较长时间去遍历整个目标数据表,并且还能够根据查询到的目标数据表的数据总量与目标页数,确定出与该目标页数匹配的数据并响应给请求端,以便请求端能够快速的获取到数据,进而将包含数据的页面展示给用户。
上述方式,即使在目标数据表中的数据量较多的情况下,也能够通过上述对应关系快速的查询到目标数据表的数据总量,从而省去了遍历过程的较长耗时,使数据查询和展示过程的处理效率得到提高,以满足实时性较高的场景。
本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点在说明书以及附图中所特别指出的结构来实现和获得。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请中所提供的Oracle类型表的分页示意图;
图2示出了本申请实施例一所提供的数据表处理方法的流程图;
图3示出了本申请实施例二所提供的数据表处理方法的流程图;
图4示出了本申请实施例二所提供的数据表处理方法中抽取过程的结构示意图;
图5示出了本申请实施例三所提供的一种数据表处理装置的结构示意图;
图6示出了本申请实施例四所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
数据治理是指从使用零散数据变为使用统一主数据、从具有很少或者没有组织和流程治理到企业范围内的综合数据治理、从尝试处理主数据混乱状况到主数据井井有条的一个过程。在数据治理过程中,通常会涉及到元数据管理、主数据管理、数据质量、数据集成等。在主数据管理过程中,需要对该平台所管理的数据,进行主数据查看。所谓主数据,针对一个数据库而言,即是数据库中包含的数据表中记录的数据。
例如,一个Oracle类型的数据表,里面有1亿条数据,在客户端进行数据展示之前,服务器需要先对该数据表中的数据进行分页处理,服务器在分页处理完毕后可以将分页信息推送给客户端,以便客户端展示分页结果,即客户端采用分页的方式,一页一页的将数据表展现在界面中。为了能够进行分页处理,服务器首先要确定出该数据表总共具有的数据条数,然后才能根据该数据表总共具有的数据条数和每页展示的数据条数等信息进行分页展示,进而将所有数据结果展示出来。例如,如图1所示,在数据表中,总共有7000001条数据,每页展示10条数据,需要700001页才能把所有数据结果显示出来。在每页数据表的页面中,展示出了每条数据内具有的项目内容,在其下面共分十行展示出了十条数据,即从第一条数据至第十条数据。
目前,针对Oracle类型的数据表,在请求端请求该数据表中的数据时,一般的处理流程为:第一步是通过遍历数据表中全部数据的方式查询数据表的数据总量,第二步是根据上一步确定的数据表数据总量,确定出分页数量,然后将查询到的全部数据进行分页处理,在对全部数据进行分页之后再根据用户欲查询的数据表页数,将数据表页数对应的数据返回给请求端。
但是,在海量数据的情况下,通过对全表数据进行扫描并分页,会存在耗时较多的问题,无法立即将查询结果返回,从而影响了数据查询和展示过程的处理效率,很难适用在实时性较高的场景下。
基于此,本申请实施例提供的一种数据表处理方法及装置,可以解决现有技术中存在的数据查询和展示过程的处理效率较低,很难应用在实时性较高的场景下的技术问题。
为便于对本申请进行理解,首先对本申请实施例所公开的一种数据表处理方法及装置进行详细介绍。
实施例一:
本申请实施例提供的一种数据表处理方法,如图2所示,包括:
S21:记录管理数据库中每个数据表的数据总量与数据表的标识之间的对应关系。
本实施例以Oracle类型的数据表为例进行说明,本步骤中,在建立Oracle类型的管理数据库的过程中(即将业务数据抽取到Oracle类型的管理数据库的过程),服务器可以记录Oracle类型的管理数据库中每个数据表(记录抽取的业务数据)的数据总量与数据表的标识之间的对应关系。该对应关系的记录方式可以有多种,例如服务器可以将该对应关系记录在一个记录表中,也可以将该对应关系记录在一个对应关系式中,只要是能够体现出数据表的标识与其数据总量之间的对应关系即可。
其中,数据表的标识信息可以为表名、标号、标签等各种形式,只要根据该标识信息能够从多个数据表中区分出该标识信息唯一代表的那个数据表即可。
例如,服务器每个数据表的表名及其具有的数据总量进行记录,从而得到记录表,因此,该记录表中记录着每个数据表的表名以及与每个表名相对应的数据总量。
具体实施中,服务器还可以实时维护上述对应关系,当监测到其中某个数据表中的数据总量发生变化时,还可以更新与该数据表的标识对应的该数据表的数据总量,关于服务器维护上述对应关系的具体实施过程将在实施例二中进行详细说明。
S22:接收请求端发送的第一查询请求,根据第一查询请求中携带的目标标识,从记录的对应关系中查询与目标标识对应的目标数据表的数据总量。
具体的,服务器先接收请求端发送的第一查询请求,之后可以识别出该第一查询请求中所携带的目标标识,然后,从S21中预先记录的对应关系中查询出与该目标标识对应的目标数据表的数据总量。
例如,服务器根据第一查询请求中携带的目标表名,在记录着每个数据表的表名及其相对应的数据总量的记录表中进行查询,进而查询出与目标表名相对应的目标数据表的数据总量。
由于服务器在接收到请求端发送的第一查询请求之前已经通过步骤S21预先记录了每个数据表的数据总量与其标识之间的对应关系,在接收到查询请求时便无需再为了得到数据总量而遍历数据,而能够直接根据步骤S21中的对应关系快速的查找到目标数据表的数据总量,从而节省了遍历流程的较长耗时,以便快速进入后续的分页流程。
S23:接收请求端的第二查询请求,根据第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定目标数据表中与目标页数匹配的数据并响应给请求端。
服务器先接收请求端发送的第二查询请求,之后进一步筛选出目标页数对应的数据。具体的,服务器根据第二查询请求中携带的目标页数和步骤S22中查询到的目标数据表的数据总量,确定目标数据表中与目标页数匹配的数据,并将该数据响应给请求端,以便请求端执行的显示操作能够快速的对该数据进行准确显示,从而提高查询结果的预览效率。
本实施例中,当请求端查询Oracle类型数据表时,即使目标数据表的数据总量较多,服务器依然能够快速的查询到目标数据表的数据总量并查找到用户所查询的数据所在页数,并响应给请求端进行展示,通过该方法可以使请求端快速的得到数据表的分页数据。
实施例二:
本申请实施例提供的一种数据表处理方法,如图3所示,包括:
S31:将从多个业务数据库中抽取的业务数据记录在管理数据库中的至少一个数据表中。
在数据治理过程中,服务器首先可以将业务数据库中的业务数据抽取至管理数据库中,以建立管理数据库,其中,该数据抽取的过程可以相当于数据备份,以保证对数据的任何处理过程都在管理数据库中进行,从而不会影响到业务数据库中记录的原始业务数据。
如图4所示,服务器可以通过数据抽取-转换-加载(Extract-Transform-Load,ETL)工具将业务数据库中的业务数据抽取至管理数据库中。其中,ETL指将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程。
例如,本步骤中,服务器从多个业务数据库(即来源端)中,选取与管理数据库(即目的端)中的数据类型相符合的业务数据,或选取与预先设置的数据类型相符合的业务数据,通过ETL工具将这些业务数据抽取备份至管理数据库(即目的端)中,在管理数据库中可以通过多张数据表来记录这些业务数据。或者,服务器也可以从多个业务数据库中选取的数据类型不一定与管理数据库中的数据类型或预先设置的数据类型相符合的业务数据,但在抽取过程中,可以通过ETL工具将选取出的业务数据转化为与管理数据库中的数据类型或预先设置的数据类型相符合的数据,以使管理数据库中的数据的类型统一、且符合管理数据库中数据的类型。
S32:监测管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和数据表的标识对应记录。
在建立管理数据库的过程中,服务器可以随时监测管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和数据表的标识对应记录,以确定每个数据表的数据总量与数据表的标识之间的对应关系。
例如,服务器利用一个记录表来记录管理数据库中每个数据表的表名及其对应的数据总量。具体的,首先服务器在管理数据库中建立一张记录表,如下表所示,该表中包括两个字段,分别是table_name(表名)和record_num(记录数量即数据总量):
table_name record_num
table1 1202020020203333
table2 24448848488488484
table3 254422222232444423
当然,该记录表中的数据总量也可以是服务器通过对管理数据库中的数据表进行遍历的方式得到,需要说明的是,该遍历的过程是在接收到查询请求之前便预先进行的过程,即在接收到查询请求之前服务器便预先确定出了管理数据库中每个数据表的数据总量,以便在服务器接收到查询请求之时能够快速的响应该请求,即快速的查询到目标数据表的数据总量。
此外,在监测管理数据库中每个数据表数据总量的过程中,若服务器监测到管理数据库中第一数据表的数据总量发生变化,则基于第一数据表的数据总量的变化情况,更新上述记录表中与第一数据表的标识对应的数据总量。其中,数据总量的变化情况包括:数据添加和数据删除。因此,通过对上述记录表的实时维护,使记录表中记录的数据总量便能够得到实时更新。
具体的,服务器利用触发器(Trigger)对管理数据库中每个数据表的数据总量变化情况进行监测。其中,触发器是一种与数据表操作有关的数据库对象,当触发器所在的数据表出现指定事件时,将调用该对象,即数据表的操作事件触发该数据表上的触发器的执行。
对于触发器的具体检测过程,首先,服务器为管理数据库中每个数据表建立第一触发器和第二触发器,若管理数据库中第一数据表对应的第一触发器检测到针对第一数据表的数据添加操作,和/或,第一数据表对应的第二触发器检测到针对第一数据表的数据删除操作,则确定第一数据表的数据总量发生变化。
需要说明的是,对触发器的检测过程也可以理解为:服务器在其监听的每张数据表中建立两个触发器。其中一个触发器在检测到针对数据表的数据添加操作时被触发,执行对记录表中与数据添加操作的数据表相应的数据总量进行增加的动作;另一个触发器在检测到针对数据表的数据删除操作时被触发,执行对记录表中与数据删除操作的数据表相应的数据总量进行减少的动作。以此实时同步的更新记录表记录的每个数据表的数据总量。
例如,将要监听数据表table1,则服务器在数据表table1中建立两个触发器,即第一触发器和第二触发器,分别监听针对数据表table1的数据添加操作和数据删除操作。
对于第一触发器,若检测到监听的数据表table1中被插入一条数据,则第一触发器被触发,第一触发器可以对记录表中记录的数据表table1中的数据总量进行更新,即在数据表的表名为table1所对应的数据总量加1,如更新前的数据总量为2324532条,更新后的数据总量为2324533条。因此,每次服务器对数据表进行数据插入时,都会自动触发该第一触发器,更新记录表中数据表table1的数据总量。
同样的,对于第二触发器,若检测到监听的数据表table1中删除了一条数据时,则第二触发器被触发,第二触发器可以对记录表中记录的数据表table1中的数据总量进行更新,即在数据表的表名为table1所对应的数据总量减1,如更新前的数据总量为345231条,更新后的数据总量为345230条。因此,每次服务器对数据表进行数据删除时,同样也会自动触发该第二触发器,更新记录表中数据表table1的数据总量。
通过对管理数据库中每张数据表建立上述触发器,可完成对数据表中数据变化的动态监听,从而可以实时更新记录表中记录的数据总量,通过将记录表和触发器相结合,既保证了记录表中记录的每个数据表的数据总量的实时性,又保证了记录的每个数据表的数据总量的正确性。
S33:接收请求端发送的第一查询请求,根据第一查询请求中携带的目标标识,从对应记录的对应关系中查询与目标标识对应的目标数据表的数据总量。
其中,目标标识可以为目标数据表的目标表名、目标标号、目标标签等。本实施例以表名为例进行说明,请求端的界面可以显示多个数据表的表名以供用户选择,用户可以通过点击目标表名来选择请求查询的目标数据表,或者,请求端的界面也可以显示表名搜索框,用户可以通过输入目标表名来搜索请求查询的目标数据表,在用户确定请求查询的目标数据表的目标表名且点击查询按钮后,请求端便向服务器发送携带该目标表名的第一查询请求。
需要说明的是,服务器先接收请求端发送的第一查询请求,之后根据其中携带的目标表名,在记录着每个数据表的表名及其相对应的数据总量的记录表中进行查询,进而查询出与目标表名相对应的目标数据表的数据总量。例如,请求端请求查询的目标数据表的目标表名为table1,则服务器在接到查询请求后,便从步骤S32建立出的记录表中查询表名为table1所对应的数据总量。例如,服务器可以执行动作:“从记录表中表名为“table1”的表格处选出数据总量”,通过执行该动作可以查询出表名为table1所对应的数据总量。
上述步骤中,在查询数据表的数据总量的过程中,服务器只需要根据目标表名,在之前已经建立出的且实时更新的记录表中进行查询,即可简便快速的得到目标表名对应的数据总量,不仅得到数据总量过程的速度加快,而且得到的数据总量也是最新的数据,提升确定数据总量的实时准确性。
S34:将目标数据表的数据总量与目标数据表的预设显示总页数进行相除,得到目标数据表中每页显示的数据量。
服务器在确定出目标表名所指代的目标数据表后,除其数据总量之外,还可以根据该目标数据表查询出与该目标数据表相关的其它信息,其中包括:目标数据表的业务内容、目标数据表的预设显示总页数(即目标数据表进行分页显示时可显示的总页数)、目标数据表的信息简介等。
然后,服务器便可以将查询出的目标数据表的数据总量与查询出的目标数据表预设显示总页数进行相除,从而得到目标数据表中每页显示的数据量。
当然,服务器还将其查询出的预设显示总页数、业务内容及信息简介等各种与该目标数据表相关的信息反馈至请求端,以使请求端根据预设显示总页数、业务内容及信息简介等进行显示,以便用户能够根据请求端界面显示出的页数选择欲查看的目标页数。
S35:接收请求端的第二查询请求,将第二查询请求中携带的目标页数与每页显示的数据量进行相乘,得到待处理数据量。
在用户通过请求端界面选择出欲查看的目标页数之后,请求端将携带该目标页数的第二查询请求发送至服务器。服务器在接收到请求端的第二查询请求之后,进一步筛选出欲显示的目标页数所在页面的数据。具体的,服务器将第二查询请求中携带的目标页数与步骤S34中得到的每页显示的数据量进行相乘,从而得到待处理数据量。
S36:由目标数据表的表头开始,依次从目标数据表中选取数据,直至选取的数据量达到待处理数据量。
例如,目标数据表一共有90条数据,即1-90条数据,待处理数据量为50条,服务器便由目标数据表中的第一条数据开始,依次从目标数据表中选取数据,直至选取的数据的数据量达到50条,则选取的数据为90条数据中的前50条数据,即1-90条数据中的第1-50条数据。
再例如,每页显示的数据量是10条,目标页数是第3页,则服务器只需要处理第1页中的10条数据、第2页中的10条数据以及第3页中的10条数据,即目标数据表中前3页的前30条数据,以此类推。
也可以理解为:如果目标页数为第1页,则服务器只需要处理第1页中包括的数据条数;如果目标页数为第2页,则服务器只需要处理第1页和第2页中包括的数据条数;如果目标页数为第3页,则服务器只需要处理第1页、第2页和第3页中包括的数据条数,以此类推。
因此,假设每页显示的数据量是M条,当需要查询第N页数据时,服务器只处理目标数据表中的前N×M条数据即可,而N×M条之后的数据便无需再做处理,从而节省数据处理的时间,提升数据处理的效率,其中,N、M为正整数。
S37:从选取的数据中确定与目标页数匹配的数据并响应给请求端。
例如,目标数据表中每页显示的数据量是30条,用户选择的目标页数是第3页,通过步骤S36选取出的数据为目标数据表中的第1-90(3页×30条/页,即前3页数据的条数)条数据,则与目标页数匹配的数据为其中(前3页数据中)的第61-90条数据(第3页的数据),最后得出的这些数据即为请求端将要显示的数据,服务器便将该第61-90条数据响应给请求端。
因此,本实施例中只需要处理目标页数及之前的数据,而无需再处理目标页数之后的其它数据,使数据处理量(即待处理数据量)根据不同的实际情况得到了不同程度的减少,从而节省了数据处理的时间,使用户能够更快的预览到欲查看的那页数据表。
本实施例中,通过记录表对每个数据表的表名及其对应的数据总量进行预先记录,以及触发器根据每个数据表的数据总量变化情况对记录表中的数据总量进行实时更新,使服务器能够快速的获取到目标数据表的数据总量的实时最新数据,再通过仅对目标页数及其之前的数据进行处理,使数据处理速度再次得到提升。在数据表的数据总量较多的情况下,也能够快速且实时的向请求端响应查询结果。因此,通过本实施例提供的数据表处理方法,实现了服务器对数据表的处理速度的提升,进而使请求端能够更快速的显示出服务器响应的查询结果,例如快速的显示出用户所请求的目标数据表中目标页数的数据,从而有效的减少了用户对于数据预览的等待时间,从而提高数据的预览效率。
实施例三:
本申请实施例提供的一种数据表处理装置,如图5所示,数据表处理装置5包括:记录模块51、接收模块52、查询模块53以及响应模块54。
在实际应用中,记录模块用于记录管理数据库中每个数据表的数据总量与数据表的标识之间的对应关系。接收模块用于接收请求端发送的第一查询请求以及接收请求端的第二查询请求。查询模块用于根据第一查询请求中携带的目标标识,从记录的对应关系中查询与目标标识对应的目标数据表的数据总量。
响应模块用于根据第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定目标数据表中与目标页数匹配的数据并响应给请求端。
进一步,记录模块具体用于将从多个业务数据库中抽取的业务数据记录在管理数据库中的至少一个数据表中,以及监测管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和数据表的标识对应记录。
作为本实施例的另一种实施方式,记录模块还用于若监测到管理数据库中第一数据表的数据总量发生变化,则更新与第一数据表的标识对应的数据总量。其中,数据总量的变化情况包括:数据添加和/或数据删除。
进一步的是,记录模块还用于为管理数据库中每个数据表建立第一触发器和第二触发器,以及在管理数据库中第一数据表对应的第一触发器检测到针对第一数据表的数据添加操作时,和/或,在第一数据表对应的第二触发器检测到针对第一数据表的数据删除操作时,确定第一数据表的数据总量发生变化。
此外,响应模块具体用于:将目标数据表的数据总量与目标数据表的预设显示总页数进行相除,得到目标数据表中每页显示的数据量。并将目标页数与每页显示的数据量进行相乘,得到待处理数据量。并且,由目标数据表的表头开始,依次从目标数据表中选取数据,直至选取的数据量达到待处理数据量,再从选取的数据中确定与目标页数匹配的数据。
本申请实施例提供的数据表处理装置,与上述实施例提供的数据表处理方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
实施例四:
本申请实施例提供的一种电子设备,如图6所示,电子设备6包括存储器61、处理器62,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例一或实施例二提供的方法的步骤。
参见图6,电子设备还包括:总线63和通信接口64,处理器62、通信接口64和存储器61通过总线63连接;处理器62用于执行存储器61中存储的可执行模块,例如计算机程序。
其中,存储器61可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口64(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线63可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器61用于存储程序,所述处理器62在接收到执行指令后,执行所述程序,前述本申请任一实施例揭示的过程定义的装置所执行的方法可以应用于处理器62中,或者由处理器62实现。
处理器62可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器62中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器62可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器62读取存储器61中的信息,结合其硬件完成上述方法的步骤。
实施例五:
本申请实施例提供的一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行上述实施例一或实施例二提供的方法。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本申请实施例提供的具有处理器可执行的非易失的程序代码的计算机可读介质,与上述实施例提供的数据表处理方法、装置以及电子设备具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本申请实施例所提供的进行数据表处理方法的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的数据表处理方法,具体实现可参见方法实施例,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (12)

1.一种数据表处理方法,其特征在于,包括:
记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系;
接收请求端发送的第一查询请求,根据所述第一查询请求中携带的目标标识,从记录的对应关系中查询与所述目标标识对应的目标数据表的数据总量;
接收所述请求端发送的第二查询请求,根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据并响应给所述请求端。
2.根据权利要求1所述的数据表处理方法,其特征在于,所述记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系,包括:
将从多个业务数据库中抽取的业务数据记录在所述管理数据库中的至少一个数据表中;
监测所述管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和所述数据表的标识对应记录。
3.根据权利要求2所述的数据表处理方法,其特征在于,所述监测所述管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和所述数据表的标识对应记录,包括:
若监测到所述管理数据库中第一数据表的数据总量发生变化,则更新与所述第一数据表的标识对应的数据总量。
4.根据权利要求3所述的数据表处理方法,其特征在于,所述监测到所述管理数据库中第一数据表的数据总量发生变化,包括:
为所述管理数据库中每个数据表建立第一触发器和第二触发器;
若所述管理数据库中所述第一数据表对应的第一触发器检测到针对所述第一数据表的数据添加操作,和/或,所述第一数据表对应的第二触发器检测到针对所述第一数据表的数据删除操作,则确定所述第一数据表的数据总量发生变化。
5.根据权利要求1所述的数据表处理方法,其特征在于,根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据,包括:
将所述目标数据表的数据总量与所述目标数据表的预设显示总页数进行相除,得到所述目标数据表中每页显示的数据量;
将所述目标页数与所述每页显示的数据量进行相乘,得到待处理数据量;
由所述目标数据表的表头开始,依次从所述目标数据表中选取数据,直至选取的数据量达到所述待处理数据量;
从选取的数据中确定与所述目标页数匹配的数据。
6.一种数据表处理装置,其特征在于,包括:
记录模块,用于记录管理数据库中每个数据表的数据总量与所述数据表的标识之间的对应关系;
接收模块,用于接收请求端发送的第一查询请求;
查询模块,用于根据所述第一查询请求中携带的目标标识,从记录的对应关系中查询与所述目标标识对应的目标数据表的数据总量;
所述接收模块还用于接收所述请求端发送的第二查询请求;
响应模块,用于根据所述第二查询请求中携带的目标页数和查询到的目标数据表的数据总量,确定所述目标数据表中与所述目标页数匹配的数据并响应给所述请求端。
7.根据权利要求6所述的数据表处理装置,其特征在于,所述记录模块,具体用于:
将从多个业务数据库中抽取的业务数据记录在所述管理数据库中的至少一个数据表中;
监测所述管理数据库中每个数据表的数据总量,并将每个数据表的数据总量和所述数据表的标识对应记录。
8.根据权利要求7所述的数据表处理装置,其特征在于,所述记录模块还用于:
若监测到所述管理数据库中第一数据表的数据总量发生变化,则更新与所述第一数据表的标识对应的数据总量。
9.根据权利要求8所述的数据表处理装置,其特征在于,所述记录模块还用于:
为所述管理数据库中每个数据表建立第一触发器和第二触发器;
若所述管理数据库中所述第一数据表对应的第一触发器检测到针对所述第一数据表的数据添加操作,和/或,所述第一数据表对应的第二触发器检测到针对所述第一数据表的数据删除操作,则确定所述第一数据表的数据总量发生变化。
10.根据权利要求6所述的数据表处理装置,其特征在于,所述响应模块,具体用于:
将所述目标数据表的数据总量与所述目标数据表的预设显示总页数进行相除,得到所述目标数据表中每页显示的数据量;
将所述目标页数与所述每页显示的数据量进行相乘,得到待处理数据量;
由所述目标数据表的表头开始,依次从所述目标数据表中选取数据,直至选取的数据量达到所述待处理数据量;
从选取的数据中确定与所述目标页数匹配的数据。
11.一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至5任一项所述的数据表处理方法的步骤。
12.一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述权利要求1至5任一项所述的数据表处理方法。
CN201910225950.7A 2019-03-22 2019-03-22 一种数据表处理方法及装置 Active CN110008243B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910225950.7A CN110008243B (zh) 2019-03-22 2019-03-22 一种数据表处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910225950.7A CN110008243B (zh) 2019-03-22 2019-03-22 一种数据表处理方法及装置

Publications (2)

Publication Number Publication Date
CN110008243A CN110008243A (zh) 2019-07-12
CN110008243B true CN110008243B (zh) 2021-05-07

Family

ID=67167941

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910225950.7A Active CN110008243B (zh) 2019-03-22 2019-03-22 一种数据表处理方法及装置

Country Status (1)

Country Link
CN (1) CN110008243B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111652580B (zh) * 2020-05-29 2023-02-14 深圳平安医疗健康科技服务有限公司 一种对节点的数据处理方法及装置
CN112732473A (zh) * 2021-01-12 2021-04-30 平安资产管理有限责任公司 基于数据分层的功能问题定位方法、装置、设备和介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120194828A1 (en) * 2011-01-31 2012-08-02 Riso Kagaku Corporation Image processing apparatus and processing program
CN108667855A (zh) * 2018-07-19 2018-10-16 百度在线网络技术(北京)有限公司 网络流量异常监测方法、装置、电子设备及存储介质
CN109344197A (zh) * 2018-09-13 2019-02-15 广州帷策智能科技有限公司 基于大数据的分页下载方法和装置
CN109450912A (zh) * 2018-11-26 2019-03-08 北京旷视科技有限公司 数据传输方法、装置和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120194828A1 (en) * 2011-01-31 2012-08-02 Riso Kagaku Corporation Image processing apparatus and processing program
CN108667855A (zh) * 2018-07-19 2018-10-16 百度在线网络技术(北京)有限公司 网络流量异常监测方法、装置、电子设备及存储介质
CN109344197A (zh) * 2018-09-13 2019-02-15 广州帷策智能科技有限公司 基于大数据的分页下载方法和装置
CN109450912A (zh) * 2018-11-26 2019-03-08 北京旷视科技有限公司 数据传输方法、装置和设备

Also Published As

Publication number Publication date
CN110008243A (zh) 2019-07-12

Similar Documents

Publication Publication Date Title
CN108388604B (zh) 用户权限数据管理装置、方法及计算机可读存储介质
CN111046034B (zh) 管理内存数据及在内存中维护数据的方法和系统
CN111339171B (zh) 数据查询的方法、装置及设备
TWI564737B (zh) Web search methods and devices
CN109299157B (zh) 一种分布式大单表的数据导出方法及装置
CN108647357B (zh) 数据查询的方法及装置
US20200042510A1 (en) Method and device for correlating multiple tables in a database environment
CN111241122B (zh) 任务监测方法、装置、电子设备和可读存储介质
CN109388671B (zh) 数据处理方法、装置、设备及存储介质
CN110008243B (zh) 一种数据表处理方法及装置
US11151112B2 (en) Correlating multiple tables in a non-relational database environment
US20140019454A1 (en) Systems and Methods for Caching Data Object Identifiers
CN110659282A (zh) 数据路由的构建方法、装置、计算机设备和存储介质
CN111258819A (zh) MySQL数据库备份文件的数据获取方法、装置和系统
CN112836124A (zh) 一种画像数据获取方法、装置、电子设备及存储介质
CN109063215B (zh) 数据检索方法及装置
CN107004036B (zh) 用以搜索包含大量条目的日志的方法和系统
CN112651840B (zh) 基于区块链和数字金融的业务数据日志处理方法及系统
CN114237806B (zh) 一种页面信息的显示方法、装置、电子设备及存储介质
CN112527824A (zh) 分页查询方法、装置、电子设备和计算机可读存储介质
CN114860806A (zh) 区块链的数据查询方法、装置、计算机设备和存储介质
CN109739883B (zh) 提升数据查询性能的方法、装置和电子设备
CN111680072A (zh) 基于社交信息数据的划分系统及方法
CN112835991B (zh) 监控数据的系统、方法、设备及存储介质
CN117909301B (zh) 基于索引的对象查询方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant