CN116775667B - 一种关联数据的处理方法及装置 - Google Patents
一种关联数据的处理方法及装置 Download PDFInfo
- Publication number
- CN116775667B CN116775667B CN202311084660.8A CN202311084660A CN116775667B CN 116775667 B CN116775667 B CN 116775667B CN 202311084660 A CN202311084660 A CN 202311084660A CN 116775667 B CN116775667 B CN 116775667B
- Authority
- CN
- China
- Prior art keywords
- date
- association
- slice
- value
- attribute
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 7
- 238000012545 processing Methods 0.000 claims abstract description 91
- 238000000034 method Methods 0.000 claims abstract description 44
- 230000008859 change Effects 0.000 claims abstract description 19
- 238000009825 accumulation Methods 0.000 claims description 31
- 230000001186 cumulative effect Effects 0.000 claims description 12
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000002354 daily effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 230000004992 fission Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种关联数据的处理方法,用于业务数据库处理,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量,包括:响应于业务数据库关联请求,在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片;生成或更新关联数据集,按照所述日期切片的开始日期或结束日期从小到大顺序,基于至少1个业务数据库生成所述关联属性对应所述日期切片的累计字段。还公开了相应的处理装置。本申请解决了有关联关系的海量数据处理时大量消耗存储资源、处理时间长等问题,实现了多业务数据库之间海量数据的关联、处理及更新。
Description
技术领域
本申请涉及数据库和数据处理技术领域,尤其涉及一种关联数据的处理方法及装置。
背景技术
对海量数据计算处理时,经常会采用Spark SQL处理。例如,在处理销售领域的数据时,有些产品销售范围广、销售层级多。具体来说,有些产品的销售范围包括国内市场和海外市场,销售层级包括国家级、省市级、地区级、门店级。对于复杂的销售体系,各层级每日会产生大量的客户信息和产品交易信息,为全盘掌握销售情况和市场动态,采用大数据技术计算各渠道层级的货物采购、销售和库存情况,可提高日常运营效率,辅助决策。
由于业务数据库(也称为业务从表)每日都增加新数据,数据积累越来越多,当需要对关联关系的多个业务数据库的数据进行累计计算时,需要消耗系统的大量计算能力,甚至拉低整个平台的运算效率,使得前端数据处理出现功能无法使用的严重情况。为了避免平台崩溃只能缩小处理范围。例如,以日期为限定条件处理产品库存数据时,需要对产品的入库数据和出库数据进行关联,再按照每日所发生的业务量从开始日期到结束日期进行累计,获得指定时间段内的累计值。当所需要处理的时间跨度大、入库数据和出库数据关系复杂时,需要消耗大量的存储和计算资源。只能被迫缩小时间跨度,从而影响了处理效果,无法满足累计的需要。
另外,对于有多个海量数据表相互关联,并且,在时间上做大跨度累计处理时,需要考虑如何减少关联数据的数量、简化数据处理复杂度、采用快速计算方法来减少处理计算时间和增大处理的时间跨度,进而实现快速、大跨度累计。
发明内容
本申请提出一种关联数据的处理方法及装置,解决了有关联的多个业务数据库处理时大量消耗存储资源、处理时间长等问题,实现了多业务数据库之间海量数据的关联、处理及更新,为海量数据的高效快捷处理及更新提供了解决办法,提高了关联海量数据的处理能力。
第一方面,本申请实施例提供一种关联数据的处理方法,用于业务数据库处理,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量,包括:
响应于业务数据库关联请求,在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片,所述日期切片是包括开始日期、结束日期、日期切片厚度和累计字段的数据簇,其中,所述开始日期是至少1个业务数据库中任意1个变化量所对应的日期,所述日期切片厚度表示未发生变化的时长,直到所述结束日期;
生成或更新关联数据集,按照所述日期切片的开始日期或结束日期从小到大顺序,基于至少1个业务数据库生成所述关联属性对应所述日期切片的累计字段;所述累计字段用于表示所述关联属性从所述指定时间段起点至所述日期切片开始日期的变化量累计值。
在一些实施例中,生成所述累计字段,包括:根据某个日期切片的前一日期切片的关联属性的变化量累计值,与所述某个日期切片的开始日期到结束日期之间的关联属性的变化量之和,确定所述某个日期切片内关联属性的累计字段的值。
在一些实施例中,生成所述累计字段,包括:在所述日期切片的开始日期到结束日期范围内,根据所述关联关系的多个业务数据库中的关联属性的变化量,根据所述关联关系,合并计算关联数据集中的关联属性的累计字段的值。
第二方面,本申请实施例还提供了一种关联数据的处理装置,包括:包括业务数据输入模块、日期切片处理模块和关联数据集处理模块,
所述业务数据输入模块,用于输入业务数据库,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量,还用于发起业务数据库关联请求;
所述日期切片处理模块,用于响应于业务数据库关联请求,在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片,所述日期切片是包括开始日期、结束日期、日期切片厚度和累计字段的数据簇,其中,所述开始日期是至少1个业务数据库中任意1个变化量所对应的日期,所述日期切片厚度表示未发生变化的时长,直到所述结束日期;
所述关联数据集处理模块,用于生成或更新关联数据集,按照所述日期切片的开始日期或结束日期从小到大顺序,基于至少1个业务数据库生成所述关联属性对应所述日期切片的累计字段,所述累计字段用于表示所述关联属性从所述指定时间段起点至所述日期切片开始日期的变化量累计值。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:解决了有关联关系的海量数据处理时大量消耗存储资源、处理时间长等问题,实现了多业务数据库之间海量数据的关联、处理及更新,为海量数据的高效快捷处理及更新提供了解决办法,提高了有关联海量数据的处理能力。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种关联数据的处理方法流程图;
图2为本申请实施例提供的一种关联数据的处理装置结构图;
图3为本申请另一实施例提供的一种关联数据的处理装置结构图;
图4为本申请实施例提供的缩减累计范围处理流程图;
图5为本申请实施例提供的日期切片的行处理流程图;
图6为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
如图1所示,本申请实施例提供了一种关联数据的处理方法,用于业务数据库处理,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量,该方法包括步骤100~130:
步骤100、设置关联关系,按照所述关联关系搜索所述多个业务数据库,确定满足所述关联关系的1个或多个属性,作为所述关联属性;
在所述多个业务数据库中读取所述关联属性状态的时间值和对应的变化量值,生成初始的关联数据集。
具体的,所述关联关系可以表示一个业务数据库中的多个有关的属性间的处理逻辑,也可以是分布在多个业务数据库中的有关的属性间的处理逻辑。
在一实施例中,入库数据集中的产品ID、入库日、产品入库与出库数据集中的产品ID、出库日、产品出库与产品的当日库存存在关联关系,由关联关系可进一步生成关联数据集。此时,关联属性为产品ID,关联关系为任意一日的增量是当日的入库数量减去当日的出库数量。
再例如,统计向某地的贸易值,产品1数据集包含目的地ID、出库日、销售额,产品2数据集包含目的地ID、出库日、销售额,由关联关系可进一步生成关联数据集。此时,关联属性为目的地ID,关联关系为任意一日的销售额为当日的产品1销售额加上产品2销售额。
需要说明的是,所述关联关系可以预先配置的,也可以是动态设置的。在本申请的方法和装置的实施例中,步骤100是可选的。当所述关联关系是预先配置的,本申请的实施例可以在步骤110读取所述关联关系,确定所述关联属性,在步骤120生成所述关联数据集。当所述关联关系是动态配置的,本申请的实施例可以在步骤100获得所述关联关系、生成初始的关联数据集,在步骤120更新所述关联数据集,使之包含所述日期切片的累计字段。
步骤110、响应于业务数据库关联请求,在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片,所述日期切片是包括开始日期、结束日期、日期切片厚度和累计字段的数据簇,其中,所述开始日期是至少1个业务数据库中任意1个变化量所对应的日期,所述日期切片厚度表示未发生变化的时长,该时长从所述开始日期持续到所述结束日期。
在日期切片内,日期切片厚度表示开始日期至结束日期的天数,当记录中只有一个日期时则开始日期与结束日期相同,日期切片厚度可表示为0。例如,日期切片的累计字段是对业务数据库中的列数据按照业务的发生日期进行累计。
作为一个例子,表1为本申请实施例提供的日期切片的数据簇的字段说明表,2022年7月1日时 A产品入库了100件,7月1日至7月4日仓库中A产品变化量始终为100件;7月5日时A产品入库了50件。由此构建日期切片:7月1日至7月4日的切片厚度表示为3, 7月5日的切片厚度表示为0,累计值为150件。
表1
另一个例子如表2~4所示,其中表2为本申请实施例提供的一个入库数据集,展示产品A01的入库数据集,其中包括入库时间、入库数量。则入库总量在2022-7-1为100,在2022-07-06为250;
表2
表3为本申请实施例提供的出库数据集,产品A01的出库数据集,其中包括出库时间、出库数量。则出库总量在2022-7-3为50;
表3
在本实施例中,所述多个业务数据库包括指定产品的入库数据集和出库数据集,所述关联数据集包括指定产品的存量数据集,存量数据集记录所述指定产品在所述指定时间段的库存数量中,至少包含所述指定产品在所述指定时间段的起点和终点之间入库数量和出库数量的变化量累计值。
产品的当日在库数量为前一日的在库数量,加上当日入库数量,再减去当日出库数量。如表4所示为本申请实施例提供的日期切片,在指定时间段(从2022-7-1到2022-7-7),根据表2和表3中作为关联属性的产品ID为A01的产品在库数量变更的开始日期和结束日期,生成如表4所示的3个日期切片,切片厚度分别为1,2和1。表4中尚未更新累计字段,所述累计字段用于表示所述关联属性从所述指定时间段起点至所述日期切片开始日期的变化量累计值。
表4
步骤120、生成或更新关联数据集,按照所述日期切片的开始日期或结束日期从小到大顺序,基于至少1个业务数据库生成所述关联属性对应所述日期切片的累计字段。
在一实施例中,基于表2~3的数据,经步骤120处理后,表4更新为表5,包含有累计值的多个日期切片数据簇。
表5
所述关联数据集中,包含所述累计字段按照日期切片的时间顺序排列的数据结构,还可以包含所述开始日期和/或结束日期按照时间顺序排列的数据结构,进一步地还可以包含所述切片厚度按照日期切片的时间顺序排列的数据结构。
对于既有海量数据的各个业务数据库分别计算产品累计与在关联数据集中计算产品累计相比,通过关联数据集计算所消耗的计算机资源少,复杂度低。因此,可提高累计计算的速度。
120A、在一些实施例中,生成所述累计字段,包括:根据某个日期切片的开始日期前一日期切片的关联属性的变化量累计值,与所述日期切片的开始日期到结束日期之间的关联属性的变化量(注意:所述开始日期到结束日期之间,只有1个变化量,发生在开始日期)之和,确定所述某个日期切片内关联属性的累计字段的值。
120B、在一些实施例中,生成所述累计字段,包括:在所述日期切片的开始日期到结束日期范围内,根据所述关联关系的多个业务数据库中的关联属性的变化量,根据所述关联关系,合并计算关联数据集中的关联属性的累计字段的值。
120C、在一些实施例中,查询在所述指定时间段内发生在某个日期切片之前的累计字段,获得初始的变化量累计值和对应的日期值;以所述初始的变化量累计值和对应的日期为基础,累计计算至少1个业务数据库的中的变化量值,直到所述某个日期切片的开始日期,得到所述日期切片的累计字段的值。
需要说明的是,当多个业务数据库进行合并时,在相同日期上多个业务数据库中相同属性的变量合并。因此,所生成的日期切片适用于多个业务数据库,在一个日期切片的范围内,在合并多个业务数据库中的关联属性只有1个变化量。
步骤130、在所述关联数据集中,生成所述连续日期值和每一个日期值对应的累计字段的索引表。
步骤130中,根据所述日期切片厚度,在每个日期切片的范围内生成从开始日期到结束日期的连续日期值,每个日期值对应于所述日期切片中的累计字段;在所述关联数据集中,生成所述连续日期值和每一个日期值对应的累计字段的索引表。
所述关联数据集中,包含所述累计字段按照连续日期值的时间顺序排列的数据结构;进一步地,所述关联数据集中还包含所述连续日期值按照时间顺序排列的数据结构,使得在所述关联数据集中,包含所述连续日期值和每一个日期值对应的累计字段构成的索引表。
如表6所示,是表5中的日期切片经步骤130处理后的结果。所述关联数据集,至少包含行裂变后的结束日期值和累计值。
表6
生成所述连续日期值和每一个日期值对应的累计字段的索引表,将每个日期切片展平为多个切片厚度从0到最大厚度的多个日期切片,达到裂变的效果,可以清晰展示一段时间内不同时间区间内的累计值。在对关联数据集进行检索时,可以将结束日期作为索引表的索引值,快速检索到一段时间内的累计,而不需要去业务数据库中查询,这种处理占用计算资源少,因此运行速度快。
在以上步骤的实施例基础上,可选的,还包含以下步骤:
步骤140、检索处理的步骤。
包含步骤110~130,还包含以下步骤:响应于输入日期,在所述关联数据集中,获取所述关联属性与所述输入日期对应的变化量累计值。也就是说,按照输入的日期在所述索引表中查询,当所述输入日期与索引表中的索引值(结束日期)一致时,该索引值对应的累计字段值输出为检索结果。
由此,本公开实施例提供一种关联数据的处理方法,通过基于日期切片的处理将原本多个业务数据库的处理,转换为对关联数据集的处理,因关联数据结构简单、数据量小,因此计算速度快。经过上述步骤后,对于原来需要3个小时处理的40亿数据缩短至20分钟。
如图2所示,本实施例提供了一种关联数据的处理装置,包括:
业务数据输入模块210、日期切片处理模块220和关联数据集处理模块230。
业务数据输入模块210,用于读取业务数据库,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量。还可用于响应业务数据库关联请求,具体的,业务数据库中保存有海量业务数据,各个业务数据库之间可存在关联关系。
所述日期切片处理模块220,用于响应于业务数据库关联请求,在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片,所述日期切片是包括开始日期、结束日期、日期切片厚度和累计字段的数据簇,其中,所述开始日期是至少1个业务数据库中任意1个变化量所对应的日期,所述日期切片厚度表示未发生变化的时长,直到所述结束日期,如步骤110所述。
所述日期切片处理模块,还用于按照所述日期切片的开始日期或结束日期从小到大顺序,基于至少1个业务数据库生成所述关联属性对应所述日期切片的累计字段;所述累计字段用于表示所述关联属性从所述指定时间段起点至所述日期切片开始日期的变化量累计值,如步骤120所述。
所述关联数据集处理模块230,用于生成或更新关联数据集。当多个业务数据库读取的数据进行合并时,在相同日期上多个业务数据库中相同属性的变量合并。
通过日期切片处理模块的列处理功能,所述关联数据集中,包含所述累计字段按照日期切片的时间顺序排列的数据结构,还可以包含所述开始日期和/或结束日期按照时间顺序排列的数据结构,进一步地还可以包含所述切片厚度按照日期切片的时间顺序排列的数据结构,如步骤120所述。
进一步地,通过日期切片处理模块的行处理功能,所述关联数据集中,包含所述累计字段按照连续日期值的时间顺序排列的数据结构;进一步地,所述关联数据集中还包含所述连续日期值按照时间顺序排列的数据结构,使得在所述关联数据集中,包含所述连续日期值和每一个日期值对应的累计字段构成的索引表,如步骤130所述。
进一步,如图3所示,本实施例提供了一种关联数据的处理装置另一结构图,包括:业务数据输入模块210、日期切片处理模块220、检索模块320和数据筛选模块310。
其中,日期切片处理模块220还包括日期切片列处理模块250和日期切片行处理模块260,数据筛选模块310还包括关联数据集处理模块230和缩减累计范围处理模块240。
所述日期切片列处理模块,用于在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片,如步骤110所述。还可用于按照日期切片中指定日期区间对设定数据字段进行累计,并将累计值写入到日期切片的逐日累计字段,如步骤120所述。
所述日期切片行处理模块,用于将多个业务数据库合并后的关联数据集中所存在的空缺日期所对应的记录补全,也就是说,补充所述日期切片中指定日期区间数据到所述关联数据集,得到连续日期的处理数据。如步骤130所述,具体包括:响应于日期切片数据簇中的切片厚度、开始日期,根据所述日期切片厚度,在每个日期切片的范围内生成从开始日期到结束日期的连续日期值,每个日期值对应于所述日期切片中的累计字段;在所述关联数据集中,生成所述连续日期值和每一个日期值对应的累计字段的索引表。
通过对日期切片的列进行处理,将多个业务数据库的关联属性的累计量更新到关联数据集,如步骤110~120,再通过日期切片的行处理对合并后的关联数据集进行动态日期补全,如步骤130。由于之前有了日期切片的列处理,补全过程主要是对所要统计的数据进行复制,从而避免了大量数据的运算。最终达到减少内存的消耗,提升统计速度的效果。
数据筛选模块310中的关联数据集处理模块,还用于将多个业务数据库按照所述关联关系和日期顺序,合并处理得到关联数据集。进一步地,与日期切片列处理相结合,在关联数据集中生成关联属性的累计字段的值,如步骤120B。
数据筛选模块310的缩减累计范围处理模块,用于获取关联数据集的最近历史记录,在最近历史记录的基础上按照日期切片进行累计,如步骤120C。
所述检索模块320,用于响应于输入日期,在所述关联数据集中,获取所述关联属性与所述输入日期对应的变化量累计值。如步骤140所述。
如图4所示,提供了缩减累计范围处理流程图,为进一步实现所述数据筛选模块310的功能,包括以下步骤:
步骤410、前期关联数据集处理。参考实施例步骤100~130,这里不再赘述。
步骤420、在历史库存记录表中获取相同关联数据集的最近历史记录;
步骤430、判断最近历史记录的时间点是否在统计日期范围内,如果“是”则执行步骤440,否则执行后续处理450;
步骤440、在最近历史记录的日期时间点的基础上计算累计值。
由此,本公开实施例提供了缩减累计范围处理流程,在计算统计范围时,基于相同产品的关联数据集中可利用历史统计数据来尝试缩减统计范围,如果在历史记录中已经有统计数据,则在历史记录的统计数据的基础上进行统计,不必从开始日期进行统计,从而可减少统计范围。例如:需要统计关联数据集中近半年内的产品在库量,而在历史记录中已经有近三个月的产品出库数量和入库数量,则本次统计可在近三个月出库数量和入库数量的基础上统计近半年的产品在库数量。如果无历史统计数据,则本次统计可作为历史统计数据在下次统计时使用,从而实现循环使用统计数据,达到缩减统计范围的目的。
如图5所示,提供的日期切片的行处理流程图,进一步实现所述日期切片行处理模块的功能,包括以下步骤:
步骤510、根据所述日期切片厚度,在每个日期切片的范围内生成从开始日期到结束日期的连续日期值,每个日期值对应于所述日期切片中的累计字段。
步骤520、在所述关联数据集中,生成所述连续日期值和每一个日期值对应的累计字段的索引表。
具体的,计算处理时需要数据的连续性,补全日期以及日期对应的数据以确保数据的连续性。日期切片列处理可对日期切片的开始日期计算出累计数据,之后再利用日期切片行处理补全日期,得到连续日期的累计数据,将累计计算分散到列和行,避免了累计计算时嵌套多个数据表、记录窗口滑动长所产生的消耗资源的操作。再有,在日期切片行处理时采用Spark SQL的窗口(window)函数和爆炸(explode)函数完成,从而避免涉及大量混洗操作,减少累计计算的消耗,提升累计数据查询的便利性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
因此,本申请还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请中第一方面任一实施例所述的方法。
进一步地,为生成本申请第二方面实施例所述的装置,本申请还提出一种电子设备(或计算设备),包括处理器和存储有程序指令的存储器,所述处理器被配置为在运行所述程序指令时实现如本申请第一方面实施例所述的方法的步骤。
图6是本申请实施例提供的一种电子设备的结构示意图。图中显示的电子设备600仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
其包括:一个或多个处理器620;存储装置610,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器620运行,使得所述一个或多个处理器620实现本申请实施例所提供的关联数据的处理方法,该方法包括本申请实施例步骤110~140、410~450、510~520的至少一部分步骤。
电子设备中处理器620的数量可以是一个或多个,图6中以一个处理器620为例;电子设备中的处理器620、存储装置610、输入装置630和输出装置640可以通过总线或其他方式连接,图中以通过总线650连接为例。
所述存储装置,可用于存储所述关联数据集。存储装置610作为一种计算机可读存储介质,可用于存储软件程序、计算机可运行程序以及模块单元,如本申请实施例中的关联数据的处理方法对应的程序指令。存储装置610可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置610可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置610可进一步包括相对于处理器620远程设置的存储器,这些远程存储器可以通过网络连接。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
可以理解的是,本实施例处理器620,包含本申请实施例日期切片处理模块220、数据筛选模块310、检索处理模块320中的任意一个或多个模块,或者,进一步地,还包含日期切片列处理模块250、日期切片行处理模块260、关联数据集处理模块230、缩减范围处理模块240中至少一个模块,用于实现上述实施例的至少1部分功能,可以是1个或多个部件构成的实体,各模块具体功能这里不再累述。
输入装置630可用于接收输入的数字、字符信息或语音信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏、扬声器等电子设备。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。在本申请中的“至少1个”表示1个或多个。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种关联数据的处理方法,用于业务数据库处理,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量;其特征在于,包括:
在有关联关系的多个业务数据库中读取关联属性状态的时间值和对应的变化量值,生成初始的关联数据集;
响应于业务数据库关联请求,在请求中指定时间段内,根据所述多个业务数据库中关联属性的变化时间来创建日期切片,所述日期切片是包括开始日期、结束日期、日期切片厚度和累计字段的数据簇,其中,所述开始日期是所述多个业务数据库中所述关联属性的变化量所对应的日期,所述日期切片厚度表示所述关联属性未发生变化的时长,直到所述结束日期;
更新关联数据集,按照所述日期切片的开始日期或结束日期从小到大顺序,基于所述多个业务数据库生成所述关联属性对应所述日期切片的累计字段;
所述累计字段用于表示所述关联属性从所述指定时间段起点至所述日期切片开始日期的变化量累计值。
2.根据权利要求1所述的方法,其特征在于,生成所述累计字段,包括:根据某个日期切片的前一日期切片的关联属性的变化量累计值,与所述某个日期切片的开始日期到结束日期之间的关联属性的变化量之和,确定所述某个日期切片内关联属性的累计字段的值。
3.根据权利要求1所述的方法,其特征在于,生成所述累计字段,包括:在所述日期切片的开始日期到结束日期范围内,根据所述关联关系的多个业务数据库中的关联属性的变化量,根据所述关联关系,合并计算关联数据集中的关联属性的累计字段的值。
4.根据权利要求1所述的方法,其特征在于,查询在所述指定时间段内发生在某个日期切片之前的累计字段,获得初始的变化量累计值和对应的日期值;以所述初始的变化量累计值和对应的日期为基础,累计计算至少1个业务数据库的中的变化量值,直到所述某个日期切片的开始日期,得到所述日期切片的累计字段的值。
5.根据权利要求1所述的方法,其特征在于,还包括以下步骤:
根据所述日期切片厚度,在每个日期切片的范围内生成从开始日期到结束日期的连续日期值,每个日期值对应于所述日期切片中的累计字段;
在所述关联数据集中,生成所述连续日期值和每一个日期值对应的累计字段的索引表。
6.根据权利要求1所述的方法,其特征在于,在所述步骤之前,还包含以下步骤:
设置所述关联关系,按照所述关联关系搜索所述多个业务数据库,确定满足所述关联关系的1个或多个属性,作为所述关联属性。
7.根据权利要求1~6任意一项所述的方法,其特征在于,还包含以下步骤:响应于输入日期,在所述关联数据集中,获取所述关联属性与所述输入日期对应的变化量累计值。
8.一种关联数据的处理装置,用于实现权利要求1~7任意一项所述方法,其特征在于,包括业务数据输入模块、日期切片处理模块和关联数据集处理模块,
所述业务数据输入模块,用于输入业务数据库,所述业务数据库包含记载属性状态的时间值的序列及与每一个所述时间值相对应的变化量,还用于发起业务数据库关联请求;
所述日期切片处理模块,用于响应于业务数据库关联请求,在请求中指定时间段内,根据有关联关系的多个业务数据库中关联属性的变化时间来创建一个或多个日期切片,所述日期切片是包括开始日期、结束日期、日期切片厚度和累计字段的数据簇,其中,所述开始日期是至少1个业务数据库中任意1个变化量所对应的日期,所述日期切片厚度表示未发生变化的时长,直到所述结束日期;
所述关联数据集处理模块,用于生成或更新关联数据集,按照所述日期切片的开始日期或结束日期从小到大顺序,基于至少1个业务数据库生成所述关联属性对应所述日期切片的累计字段;所述累计字段用于表示所述关联属性从所述指定时间段起点至所述日期切片开始日期的变化量累计值。
9.一种关联数据的处理装置,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在运行所述程序指令时,用于实现权利要求1~7任意一项所述方法。
10.一种存储介质,存储有程序指令,其特征在于,所述程序指令在运行时,执行如权利要求1~7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311084660.8A CN116775667B (zh) | 2023-08-28 | 2023-08-28 | 一种关联数据的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311084660.8A CN116775667B (zh) | 2023-08-28 | 2023-08-28 | 一种关联数据的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116775667A CN116775667A (zh) | 2023-09-19 |
CN116775667B true CN116775667B (zh) | 2023-12-22 |
Family
ID=87991678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311084660.8A Active CN116775667B (zh) | 2023-08-28 | 2023-08-28 | 一种关联数据的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116775667B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6219668B1 (en) * | 1996-02-05 | 2001-04-17 | Jean Pierre Alfred Arnaud | Method for a paperless office management system using a set table and name-day-message document data |
CN113326397A (zh) * | 2021-08-04 | 2021-08-31 | 北京达佳互联信息技术有限公司 | 业务数据的处理方法、装置 |
CN114218238A (zh) * | 2021-12-16 | 2022-03-22 | 城云科技(中国)有限公司 | 记录数据完整变化信息的数据存储方法、系统及应用 |
CN114519067A (zh) * | 2022-02-17 | 2022-05-20 | 徐婷 | 一种基于自动化sql编写的数据指标查询模型 |
CN115757660A (zh) * | 2022-11-25 | 2023-03-07 | 重庆长安汽车股份有限公司 | 一种自动生成数据库表间关联关系的方法、系统、电子设备及程序产品 |
-
2023
- 2023-08-28 CN CN202311084660.8A patent/CN116775667B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6219668B1 (en) * | 1996-02-05 | 2001-04-17 | Jean Pierre Alfred Arnaud | Method for a paperless office management system using a set table and name-day-message document data |
CN113326397A (zh) * | 2021-08-04 | 2021-08-31 | 北京达佳互联信息技术有限公司 | 业务数据的处理方法、装置 |
CN114218238A (zh) * | 2021-12-16 | 2022-03-22 | 城云科技(中国)有限公司 | 记录数据完整变化信息的数据存储方法、系统及应用 |
CN114519067A (zh) * | 2022-02-17 | 2022-05-20 | 徐婷 | 一种基于自动化sql编写的数据指标查询模型 |
CN115757660A (zh) * | 2022-11-25 | 2023-03-07 | 重庆长安汽车股份有限公司 | 一种自动生成数据库表间关联关系的方法、系统、电子设备及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN116775667A (zh) | 2023-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7149736B2 (en) | Maintaining time-sorted aggregation records representing aggregations of values from multiple database records using multiple partitions | |
US9805077B2 (en) | Method and system for optimizing data access in a database using multi-class objects | |
EP3456360B1 (en) | Device and method for tuning relational database | |
EP1610235B1 (en) | A data processing system and method | |
CN104182435A (zh) | 基于数据缺失标记的信息检索系统及方法 | |
CN113326285B (zh) | 数据库表的查询方法及装置 | |
CN111125158B (zh) | 数据表处理方法、装置、介质及电子设备 | |
CN114020713A (zh) | 一种日志结构合并树的文件合并方法、装置、电子设备及存储介质 | |
CN116775667B (zh) | 一种关联数据的处理方法及装置 | |
CN109725852B (zh) | 一种限流计数的优化方法及终端 | |
US20170316003A1 (en) | Bulk Sets for Executing Database Queries | |
US20120109875A1 (en) | Organization of data mart using clustered key | |
CN112347098A (zh) | 数据库表拆分方法、系统、电子设备及存储介质 | |
CN114564501A (zh) | 一种数据库数据存储、查询方法、装置、设备及介质 | |
CN113625967A (zh) | 数据存储方法、数据查询方法及服务器 | |
US20060085394A1 (en) | Methods and apparatus for processing a database query | |
CN111737281B (zh) | 数据库查询方法、装置、电子设备以及可读存储介质 | |
CN117520313B (zh) | 基于多维关联数据仓库切片表的数据回溯方法及装置 | |
CN117909301B (zh) | 基于索引的对象查询方法、装置、设备及介质 | |
CN113486021B (zh) | 分布式银行系统中确定账户日平均余额的方法及装置 | |
CN113127436B (zh) | 一种数据同步方法、装置、服务器及存储介质 | |
CN112069212B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN109325031B (zh) | 一种数据统计方法、装置、设备和存储介质 | |
CN117633018A (zh) | 一种查询方法、装置、电子设备及存储介质 | |
CN118113670A (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 |