CN113312412A - 一种统计数据的获取方法、装置、电子设备及存储介质 - Google Patents
一种统计数据的获取方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113312412A CN113312412A CN202110715892.3A CN202110715892A CN113312412A CN 113312412 A CN113312412 A CN 113312412A CN 202110715892 A CN202110715892 A CN 202110715892A CN 113312412 A CN113312412 A CN 113312412A
- Authority
- CN
- China
- Prior art keywords
- statistical
- task
- data
- period
- execution
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000013507 mapping Methods 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 abstract description 16
- 230000004044 response Effects 0.000 abstract description 13
- 238000012545 processing Methods 0.000 abstract description 9
- 230000007246 mechanism Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 235000019580 granularity Nutrition 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种统计数据的获取方法、装置、电子设备及存储介质,涉及数据处理技术领域。所述方法包括:获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。本发明提供的统计数据的获取方法、装置及电子设备,能够利用自动任务机制,提前把计算好的统计数据存入统计数据库,将原来的数据库计算改为数据库查询,大大提高了数据响应速度。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种统计数据的获取方法、装置、电子设备及存储介质。
背景技术
现有技术中,每次前端统计图展示数据时都要向后端发送数据请求,后端响应所述数据请求,对原始数据进行统计计算后返回给前端页面,以使前端页面展示统计数据。这种统计数据的获取方法,后端针对每次请求都要进行一次计算,且每次计算耗时太长,造成后端响应数据慢的问题。这时,可以通过增加缓存提高数据响应速度,例如:利用redis作为缓存,当前端向后端发送数据请求时,后端首先查看redis缓存中是否有统计数据,若有,则直接返回,若没有,则计算统计数据并存入redis缓存中;但这种方案仍然无法解决对首次查询的数据响应速度慢的问题。
发明内容
针对现有技术中的问题,本发明实施例提供一种统计数据的获取方法、装置、电子设备及存储介质,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种统计数据的获取方法,包括:获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
可选的,在获取统计数据查询请求之前,所述方法还包括:获取新增统计任务的请求,所述请求中包括新增的统计任务;根据所述新增的统计任务对原始数据进行统计,生成统计数据。
可选的,所述统计任务具有相应的统计周期和执行周期;所述根据所述新增的统计任务对原始数据进行统计,生成统计数据包括:在每个所述执行周期,调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述统计任务还具有相应的任务状态,所述任务状态包括正在执行状态;所述在每个所述执行周期,调起所述统计任务包括:在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态;若所述统计任务当前的任务状态不是正在执行状态,则调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述方法还包括:若所述统计任务当前的任务状态为正在执行状态,则判断所述统计任务的执行时长是否超出任务锁定时长;若所述统计任务的执行时长超出任务锁定时长,则重新调起所述统计任务,以使所述统计任务重新按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述统计任务每次执行时具有相应的版本号;在每次调起所述统计任务之后,所述方法还包括:若所述统计任务执行成功,则将所述统计任务当前的版本号、所述统计任务的任务信息、以及所述统计任务按照相应的统计周期对原始数据进行统计后生成的统计数据对应保存至所述统计数据库中。
可选的,所述根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据包括:根据所述统计任务的任务信息,在统计数据库中查找所述统计任务最新的版本号所对应的统计数据。
可选的,所述统计任务的任务信息包括以下至少一种:统计任务的任务名、统计任务的统计周期、统计任务的版本号。
另一方面,本发明提供一种统计数据的获取装置,包括:第一获取模块,用于获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;查找模块,用于根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
可选的,所述装置还包括:第二获取模块,用于获取新增统计任务的请求,所述请求中包括新增的统计任务;生成模块,用于根据所述新增的统计任务对原始数据进行统计,生成统计数据。
可选的,所述统计任务具有相应的统计周期和执行周期;所述生成模块具体用于:在每个所述执行周期,调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述统计任务还具有相应的任务状态,所述任务状态包括正在执行状态;所述生成模块包括:第一判断单元,用于在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态;第一调起单元,用于若所述统计任务当前的任务状态不是正在执行状态,则调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述生成模块还包括:第二判断单元,用于若所述统计任务当前的任务状态为正在执行状态,则判断所述统计任务的执行时长是否超出任务锁定时长;第二调起单元,用于若所述统计任务的执行时长超出任务锁定时长,则重新调起所述统计任务,以使所述统计任务重新按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述统计任务每次执行时具有相应的版本号;所述生成模块还包括:保存单元,用于若所述统计任务执行成功,则将所述统计任务当前的版本号、所述统计任务的任务信息、以及所述统计任务按照相应的统计周期对原始数据进行统计后生成的统计数据对应保存至所述统计数据库中。
可选的,所述查找模块具体用于:根据所述统计任务的任务信息,在统计数据库中查找所述统计任务最新的版本号所对应的统计数据。
可选的,所述统计任务的任务信息包括以下至少一种:统计任务的任务名、统计任务的统计周期、统计任务的版本号。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述的统计数据的获取方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述的统计数据的获取方法的步骤。
本发明实施例提供的统计数据的获取方法、装置及电子设备,通过获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。这样,能够利用自动任务机制,提前把计算好的统计数据存入统计数据库,将原来的数据库计算改为数据库查询,大大提高了数据响应速度,解决了每次请求都要在数据库实时计算造成耗时过长的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明第一实施例提供的统计数据的获取方法的流程示意图。
图2是本发明第二实施例提供的统计数据的获取方法的部分流程示意图。
图3是本发明第三实施例提供的统计数据的获取方法的部分流程示意图。
图4是本发明第四实施例提供的统计数据的获取方法的部分流程示意图。
图5是现有的统计数据获取方法与本发明第五实施例提供的统计数据的获取方法的对比示意图。
图6是本发明第六实施例提供的统计数据的获取装置的结构示意图。
图7是本发明第七实施例提供的统计数据的获取装置的结构示意图。
图8是本发明第八实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
本发明实施例提供的统计数据的获取方法的执行主体包括但不限于计算机。
图1是本发明一实施例提供的统计数据的获取方法的流程示意图,如图1所示,本发明实施例提供的统计数据的获取方法,包括:
S101、获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;
本步骤,可向用户提供前端界面,以使用户可通过前端界面输入所述统计任务的任务信息;所述统计任务可以为预先定义的任务,所述统计任务可采用自动任务机制或定时任务机制,也即所述统计任务可以在指定时间点或一个日期范围内以指定的统计周期按指定的执行频率自动调起,它的调度执行无需人工干预。也就是说,所述统计任务可以在离线状态下对原始数据进行统计计算。
所述统计任务的任务信息可以包括以下至少一种:统计任务的任务名、统计任务的统计周期、统计任务的版本号。所述统计任务的任务名用于对统计任务进行标识,预先定义的各统计任务分别具有各自的任务名;所述统计任务的版本号用于记录所述统计任务的执行次数,所述统计任务每执行一次,该统计任务当前的版本号更新一次,例如所述统计任务每执行一次,该统计任务当前的版本号加1。所述统计任务的统计周期是指,统计任务对原始数据进行统计计算时所依据的统计周期粒度,如年、月、日、季、周、小时等,在定义所述统计任务时,可同时为所述统计任务设置相应的统计周期,每个所述统计任务可设置至少一个统计周期,支持所述统计任务的多种统计方式,例如,某一统计任务的统计周期包括当年(当前所在年份)和当月(当前所在月份),则该统计任务每次执行时,可以对当年的原始数据以及当月的原始数据分别进行统计计算。
可通过所述前端界面提供多种查询方式,例如通过仅输入统计任务的任务名的方式进行统计数据查询、通过输入统计任务的任务名和统计周期的方式进行统计数据查询、通过输入统计任务的统计任务的任务名、统计周期以及版本号的方式进行统计数据查询。
S102、根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
本步骤,通过所述统计任务提前对所述原始数据进行统计计算后生成所述统计数据,且将所述统计数据与所述统计任务的任务信息之间的映射关系提前保存在所述统计数据库中,以及时响应后续的所述统计数据查询操作。
可以利用自动任务指定统计任务的执行时间,在系统访问量低的时候执行统计任务,节省在系统访问量高的时候的计算资源。
本发明实施例提供的统计数据的获取方法,通过获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。这样,能够利用自动任务机制,提前把计算好的统计数据存入统计数据库,将原来的数据库计算改为数据库查询,大大提高了数据响应速度,解决了每次请求都要在数据库实时计算造成耗时过长的问题。
还可以解决redis缓存方案对首次查询的数据响应速度慢的问题,每次请求都可以直接利用索引查询统计数据库内计算好的统计数据,不需要再实时计算统计数据,从而提高数据响应速度。
如图2所示,可选的,在获取统计数据查询请求之前,所述方法还可以包括:
S001、获取新增统计任务的请求,所述请求中包括新增的统计任务;
本步骤,可提供一个通用的统计任务接口,应用只需实现该接口,根据实际情况编写自己的统计逻辑即可;相应的,所述新增统计任务的请求中可以包括所述新增的统计任务的统计逻辑、任务名等。
S002、根据所述新增的统计任务对原始数据进行统计,生成统计数据。
本步骤,所述统计任务按照自己的统计逻辑,对所述原始数据进行统计计算后即可得到与所述统计任务相对应的统计数据。在应用需要查询统计数据时,需先调用查询接口,根据统计任务的任务信息去统计数据库中查询具体的统计数据。
本实施例,可支持多个应用接入所述统计任务接口,多个应用可各自分别编辑自己所需的统计任务,在进行统计数据查询时,通过查询接口输入目标统计任务的任务信息即可获取统计数据库中该目标任务对应的统计数据。
可选的,所述统计任务可以具有相应的统计周期和执行周期;所述根据所述新增的统计任务对原始数据进行统计,生成统计数据可以包括:在每个所述执行周期,调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
本实施例,所述统计任务的执行周期是指所述统计任务每次执行时所依据的执行时间条件;在每个所述执行周期,只允许所述统计任务执行一次,或者只允许所述统计任务成功执行一次。对于某个统计任务来说,它可以在统计周期内反复执行,一个统计周期内,可以只以最后一次成功执行的结果为准。如果某一次执行失败了,本次的执行结果不会被更新为最后一次成功执行的结果,因此也不会被查询出来。
如图3所示,可选的,所述统计任务还可以具有相应的任务状态,所述任务状态包括正在执行状态;所述在每个所述执行周期,调起所述统计任务包括:
S0021、在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态;
本步骤,所述在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态是指,在所述统计任务满足执行时间条件时,在所述统计任务执行之前,判断所述统计任务当前的任务状态是否为正在执行状态。
S0022、若所述统计任务当前的任务状态不是正在执行状态,则调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
本实施例,可通过任务执行状态(Exec_St)控制任务并发,在新任务开始前,会先尝试获取该任务的执行权限,若为执行中,则不执行新任务,否则执行新任务。也即如果没有获取到执行权限,则不执行新任务。
如图4所示,可选的,在上述实施例中,所述方法还可以包括:
S0023、若所述统计任务当前的任务状态为正在执行状态,则判断所述统计任务的执行时长是否超出任务锁定时长;
本步骤,在配置统计任务时,可以指定任务锁定时长(statTskLockTime),在未指定的情况下,可以默认各任务的锁定时长为30分钟。
S0024、若所述统计任务的执行时长超出任务锁定时长,则重新调起所述统计任务,以使所述统计任务重新按照相应的统计周期对原始数据进行统计,生成统计数据。
本实施例,为所述统计任务设置锁定时长,主要用来应对如下场景:任务执行结束后,会更新任务执行状态,以便下次任务执行,但如果更新状态失败,则该任务会一直标记为执行中,不会执行新任务。通过为统计任务设置锁定时长,在新任务执行之前,如果该任务状态为执行中,则会判断任务执行时长是否已经超过任务锁定时长,如果超过任务锁定时长,则会执行新任务,并抛弃旧任务。
可选的,所述统计任务每次执行时具有相应的版本号;在每次调起所述统计任务之后,所述方法还包括:若所述统计任务执行成功,则将所述统计任务当前的版本号、所述统计任务的任务信息、以及所述统计任务按照相应的统计周期对原始数据进行统计后生成的统计数据对应保存至所述统计数据库中。
本实施例,所述统计数据库中保存有所述统计任务每次执行成功后生成的统计数据,这样,通过统计数据所对应的版本号标识,可以支持历史统计数据的查询。
可选的,所述根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据包括:根据所述统计任务的任务信息,在统计数据库中查找所述统计任务最新的版本号所对应的统计数据。
本实施例,所述统计任务每次执行时,都可以使当前版本号(Curr_Vno)加1,任务执行结束后,如果执行成功,应用调用查询接口时,提供该最新的版本号所对应的统计数据,从而可以使应用得到最新的统计数据。
为更好的理解本发明,下面通过一具体实施例对本发明提供的统计数据的获取方法进行介绍。
本实施例提供的统计数据的获取方法的实现过程如图5所示。该图分为两部分,左侧是现状,右侧为本实施例实现过程:
S201、通用统计任务接口获取应用配置的自动统计任务;
本步骤,自动统计任务调度配置如下:
按需求配置多个自动统计任务,每个统计任务需要在应用批次号中配置的内容包括:调度的应用多实体标识(可选)、应用服务名、统计任务名、统计任务周期(0-无周期、1-日、2-月、3-年)、补跑周期(可选)、任务锁定时长(可选,默认30分钟)。
S202、统用统计处理逻辑读取所述统计任务的任务信息并将所述任务信息写入统计控制表;
本步骤,所述统计控制表(Stat_Tsk_Ctrl)如下:
该统计控制表的索引为:主键、唯一索引:#多实体标识、统计任务名称、统计任务周期。
该统计控制表的核心功能是:某个统计任务在统计周期内可以反复执行(由版本号控制),一个统计周期内,只以最后一次成功执行的结果为准。如果某一次统计结果失败了,它不会被更新到最后一次成功执行的结果,因此也不会被查询出来。
所述统计控制表中部分字段的作用如下:
统计控制表中提供可选字段Multi_Tenancy_id,支持多租户应用接入,在执行统计任务和查询统计版本号时,应用可根据需要传入该字段,通过该字段可进行多租户控制。
通过任务当前执行状态(Exec_St)控制任务并发,在新任务开始前,会先尝试获取该任务的执行权限,该阶段的一个关键步骤为:检查该字段是否为1(执行中),若为执行中,则不执行新任务,否则执行新任务。如果没有获取到执行权限,则不执行新任务。
在配置自动任务时,可以指定任务锁定时长(statTskLockTime),默认30分钟,该字段主要用来解决如下场景:任务执行结束后,会更新任务执行状态,以便下次任务执行,但如果更新状态失败,则该任务会一直标记为执行中,不会执行新任务。通过该字段,在新任务执行之前,如果该任务状态为执行中,则会判断任务执行时间是否已经超过任务锁定时间,如果超过任务锁定时间,则会执行新任务,并抛弃旧任务,从而提供更加精细的控制。
在执行任务的过程中,如果任务执行异常,则会标记该任务为失败,同时记录异常信息并存入执行信息字段(Exec_Inf),供应用参考。
每次执行新任务时,都会使当前版本号(Curr_Vno)加1,并把该字段的值传递给应用的统计任务,任务执行结束后,如果执行成功,则会更新该任务的成功版本号与当前版本号一致,如果失败则不会更新成功版本号。通过这两个字段进行统计数据的版本控制,应用调用查询接口时,只会提供成功版本号,保证该版本的统计任务执行是成功的。
S203、统计任务根据应用定义的统计加工逻辑从数据原始表中获取原始数据进行统计计算,生成统计数据,并将统计数据与统计任务的映射关系写入应用统计表(相当于统计数据库)中;
本步骤,新增一个自动统计任务CommonStatServiceImpl实现自动统计任务接口,里面的逻辑如下:
S204、根据统计任务的执行结果更新所述统计任务的任务信息,并写入所述统计控制表中;
S205、所述统计任务本次执行结束;
S206、报表查询交易接口获取应用的查询请求;
S207、根据所述查询请求,在统计控制表读取所述查询请求中的统计任务的统计控制信息;
本步骤,与所述统计控制表对接的所述报表查询交易接口可以为接口IStatCommonService,beanid为statCommonService;所述统计控制表对所述报表查询接口的响应逻辑如下表所示:
本实施例同时提供多种查询统计周期和版本号的接口,支持查询指定统计周期的统计数据(历史统计数据)。
S208、根据统计任务的统计控制信息,在所述应用统计表中读取与所述统计控制信息相对应的统计数据;
S209、将所述统计数据返回给所述应用;
S210、应用页面根据所述统计数据,展示数据报表。
本实施例提供了一个通用统计任务接口,应用只需实现该接口,根据实际情况编写自己的统计逻辑即可。在应用需要查询数据报表时,需先调用报表查询交易接口,获取统计周期、版本号等,再根据这些字段去应用统计表(相当于统计数据库)中查询具体的统计数据,无需对数据进行加工,能够提升联机交易响应速度和并发能力。同时,支持多种不同的统计周期粒度,如年、月、日、季、周、小时等,提供多种统计和查询方式。
可选的,还可以向各应用提供一统一的统计调度接口IStatService,应用需要实现该接口并改造相应逻辑:
本实施例可以支持统计任务补跑,可以指定要执行的统计任务的统计周期,用来补充历史统计数据。
图6是本发明一实施例提供的统计数据的获取装置的结构示意图,如图6所示,本发明实施例提供的统计数据的获取装置包括:第一获取模块31,用于获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;查找模块32,用于根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
本发明实施例提供的统计数据的获取装置,能够利用自动任务机制,提前把计算好的统计数据存入统计数据库,将原来的数据库计算改为数据库查询,大大提高了数据响应速度,解决了每次请求都要在数据库实时计算造成耗时过长的问题。
还可以解决redis缓存方案对首次查询的数据响应速度慢的问题,每次请求都可以直接利用索引查询统计数据库内计算好的统计数据,不需要再实时计算统计数据,从而提高数据响应速度。
如图7所示,可选的,所述装置还包括:第二获取模块33,用于获取新增统计任务的请求,所述请求中包括新增的统计任务;生成模块34,用于根据所述新增的统计任务对原始数据进行统计,生成统计数据。
可选的,所述统计任务具有相应的统计周期和执行周期;所述生成模块具体用于:在每个所述执行周期,调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述统计任务还具有相应的任务状态,所述任务状态包括正在执行状态;所述生成模块包括:第一判断单元,用于在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态;第一调起单元,用于若所述统计任务当前的任务状态不是正在执行状态,则调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述生成模块还包括:第二判断单元,用于若所述统计任务当前的任务状态为正在执行状态,则判断所述统计任务的执行时长是否超出任务锁定时长;第二调起单元,用于若所述统计任务的执行时长超出任务锁定时长,则重新调起所述统计任务,以使所述统计任务重新按照相应的统计周期对原始数据进行统计,生成统计数据。
可选的,所述统计任务每次执行时具有相应的版本号;所述生成模块还包括:保存单元,用于若所述统计任务执行成功,则将所述统计任务当前的版本号、所述统计任务的任务信息、以及所述统计任务按照相应的统计周期对原始数据进行统计后生成的统计数据对应保存至所述统计数据库中。
可选的,所述查找模块具体用于:根据所述统计任务的任务信息,在统计数据库中查找所述统计任务最新的版本号所对应的统计数据。
可选的,所述统计任务的任务信息包括以下至少一种:统计任务的任务名、统计任务的统计周期、统计任务的版本号。
本发明提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图8为本发明一实施例提供的电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行如下方法:获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种统计数据的获取方法,其特征在于,包括:
获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;
根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
2.根据权利要求1所述的方法,其特征在于,在获取统计数据查询请求之前,所述方法还包括:
获取新增统计任务的请求,所述请求中包括新增的统计任务;
根据所述新增的统计任务对原始数据进行统计,生成统计数据。
3.根据权利要求2所述的方法,其特征在于,所述统计任务具有相应的统计周期和执行周期;所述根据所述新增的统计任务对原始数据进行统计,生成统计数据包括:
在每个所述执行周期,调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
4.根据权利要求3所述的方法,其特征在于,所述统计任务还具有相应的任务状态,所述任务状态包括正在执行状态;所述在每个所述执行周期,调起所述统计任务包括:
在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态;
若所述统计任务当前的任务状态不是正在执行状态,则调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若所述统计任务当前的任务状态为正在执行状态,则判断所述统计任务的执行时长是否超出任务锁定时长;
若所述统计任务的执行时长超出任务锁定时长,则重新调起所述统计任务,以使所述统计任务重新按照相应的统计周期对原始数据进行统计,生成统计数据。
6.根据权利要求3至5任一所述的方法,其特征在于,所述统计任务每次执行时具有相应的版本号;在每次调起所述统计任务之后,所述方法还包括:
若所述统计任务执行成功,则将所述统计任务当前的版本号、所述统计任务的任务信息、以及所述统计任务按照相应的统计周期对原始数据进行统计后生成的统计数据对应保存至所述统计数据库中。
7.根据权利要求6所述的方法,其特征在于,所述根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据包括:
根据所述统计任务的任务信息,在统计数据库中查找所述统计任务最新的版本号所对应的统计数据。
8.根据权利要求1所述的方法,其特征在于,所述统计任务的任务信息包括以下至少一种:统计任务的任务名、统计任务的统计周期、统计任务的版本号。
9.一种统计数据的获取装置,其特征在于,包括:
第一获取模块,用于获取统计数据查询请求,所述查询请求中包括统计任务的任务信息;
查找模块,用于根据所述统计任务的任务信息,在统计数据库中查找相应的统计数据,其中,所述统计数据库中保存有统计任务的任务信息与统计数据之间的映射关系,且所述统计数据由所述统计任务对原始数据进行统计后得到。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于获取新增统计任务的请求,所述请求中包括新增的统计任务;
生成模块,用于根据所述新增的统计任务对原始数据进行统计,生成统计数据。
11.根据权利要求10所述的装置,其特征在于,所述统计任务具有相应的统计周期和执行周期;所述生成模块具体用于:
在每个所述执行周期,调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
12.根据权利要求11所述的装置,其特征在于,所述统计任务还具有相应的任务状态,所述任务状态包括正在执行状态;所述生成模块包括:
第一判断单元,用于在每个所述执行周期,判断所述统计任务当前的任务状态是否为正在执行状态;
第一调起单元,用于若所述统计任务当前的任务状态不是正在执行状态,则调起所述统计任务,以使所述统计任务按照相应的统计周期对原始数据进行统计,生成统计数据。
13.根据权利要求12所述的装置,其特征在于,所述生成模块还包括:
第二判断单元,用于若所述统计任务当前的任务状态为正在执行状态,则判断所述统计任务的执行时长是否超出任务锁定时长;
第二调起单元,用于若所述统计任务的执行时长超出任务锁定时长,则重新调起所述统计任务,以使所述统计任务重新按照相应的统计周期对原始数据进行统计,生成统计数据。
14.根据权利要求11至13任一所述的装置,其特征在于,所述统计任务每次执行时具有相应的版本号;所述生成模块还包括:
保存单元,用于若所述统计任务执行成功,则将所述统计任务当前的版本号、所述统计任务的任务信息、以及所述统计任务按照相应的统计周期对原始数据进行统计后生成的统计数据对应保存至所述统计数据库中。
15.根据权利要求14所述的装置,其特征在于,所述查找模块具体用于:
根据所述统计任务的任务信息,在统计数据库中查找所述统计任务最新的版本号所对应的统计数据。
16.根据权利要求9所述的装置,其特征在于,所述统计任务的任务信息包括以下至少一种:统计任务的任务名、统计任务的统计周期、统计任务的版本号。
17.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8任一项所述方法的步骤。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110715892.3A CN113312412A (zh) | 2021-06-25 | 2021-06-25 | 一种统计数据的获取方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110715892.3A CN113312412A (zh) | 2021-06-25 | 2021-06-25 | 一种统计数据的获取方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113312412A true CN113312412A (zh) | 2021-08-27 |
Family
ID=77380543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110715892.3A Pending CN113312412A (zh) | 2021-06-25 | 2021-06-25 | 一种统计数据的获取方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113312412A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114416812A (zh) * | 2021-12-14 | 2022-04-29 | 北京声智科技有限公司 | 数据统计方法、装置、电子设备及存储介质 |
CN114461614A (zh) * | 2022-04-12 | 2022-05-10 | 北京安华金和科技有限公司 | 一种敏感数据标识处理方法和系统 |
CN114610785A (zh) * | 2022-01-24 | 2022-06-10 | 北京声智科技有限公司 | 一种数据处理方法、装置和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557316A (zh) * | 2009-05-14 | 2009-10-14 | 阿里巴巴集团控股有限公司 | 一种更新统计数据的方法和系统 |
CN105279143A (zh) * | 2015-10-17 | 2016-01-27 | 浙江宇视科技有限公司 | 一种周期性报表系统 |
CN112256764A (zh) * | 2020-10-29 | 2021-01-22 | 河南省科学院应用物理研究所有限公司 | 统计数据的快速查询方法、装置、计算机设备及存储介质 |
-
2021
- 2021-06-25 CN CN202110715892.3A patent/CN113312412A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557316A (zh) * | 2009-05-14 | 2009-10-14 | 阿里巴巴集团控股有限公司 | 一种更新统计数据的方法和系统 |
CN105279143A (zh) * | 2015-10-17 | 2016-01-27 | 浙江宇视科技有限公司 | 一种周期性报表系统 |
CN112256764A (zh) * | 2020-10-29 | 2021-01-22 | 河南省科学院应用物理研究所有限公司 | 统计数据的快速查询方法、装置、计算机设备及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114416812A (zh) * | 2021-12-14 | 2022-04-29 | 北京声智科技有限公司 | 数据统计方法、装置、电子设备及存储介质 |
CN114610785A (zh) * | 2022-01-24 | 2022-06-10 | 北京声智科技有限公司 | 一种数据处理方法、装置和电子设备 |
CN114461614A (zh) * | 2022-04-12 | 2022-05-10 | 北京安华金和科技有限公司 | 一种敏感数据标识处理方法和系统 |
CN114461614B (zh) * | 2022-04-12 | 2022-06-28 | 北京安华金和科技有限公司 | 一种敏感数据标识处理方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113312412A (zh) | 一种统计数据的获取方法、装置、电子设备及存储介质 | |
CN107391628B (zh) | 数据同步方法及装置 | |
CN110555078A (zh) | 分布式id生成 | |
CN110445828B (zh) | 一种基于Redis的数据分布式处理方法及其相关设备 | |
CN109358874B (zh) | 业务规则更新方法、装置、计算机设备和存储介质 | |
CN110704463A (zh) | 常用数据的本地缓存方法、装置、计算机设备及存储介质 | |
CN109614559A (zh) | 数据处理方法及装置 | |
CN112084199B (zh) | 一种基于场景的通用参数维护方法及装置 | |
CN113946427A (zh) | 用于多操作系统的任务处理方法、处理器及存储介质 | |
CN111142975B (zh) | 状态机持久化方法及状态机持久化系统 | |
CN110795674B (zh) | 一种配置更新方法及装置 | |
CN112631648A (zh) | 一种服务配置方法、装置、电子设备及存储介质 | |
CN112328325A (zh) | 模型文件的执行方法、装置、终端设备及存储介质 | |
CN111161064A (zh) | 一种区块链交易记录的处理方法及装置 | |
CN106446080B (zh) | 数据查询的方法、查询服务设备、客户端设备和数据系统 | |
CN109542598B (zh) | 定时任务管理方法及装置 | |
CN113918531A (zh) | 分布式表格系统的数据同步方法、装置以及服务端设备 | |
CN111126004A (zh) | 产品序列码生成方法、装置、设备和计算机可读存储介质 | |
CN113760853B (zh) | 一种目录处理方法、服务器以及存储介质 | |
CN112597191B (zh) | 数据处理方法、装置、电子设备、存储介质及程序产品 | |
CN117909414A (zh) | 基于XXL-JOB实现informix与MySQL数据库同步方法、装置、设备及介质 | |
CN113032395A (zh) | 一种应用服务器的缓存刷新方法及装置 | |
CN117453770A (zh) | 数据库集群中序列值的处理方法、介质与计算机设备 | |
CN107704614B (zh) | 一种通知信息变更方法及系统 | |
CN115982188A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221026 Address after: 25 Financial Street, Xicheng District, Beijing 100033 Applicant after: CHINA CONSTRUCTION BANK Corp. Address before: 12 / F, 15 / F, No. 99, Yincheng Road, Shanghai pilot Free Trade Zone, 200120 Applicant before: Jianxin Financial Science and Technology Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210827 |