事务处理方法、装置、计算设备及存储介质制造方法及图纸

技术编号:35054213 阅读:14 留言:0更新日期:2022-09-28 10:59
本申请公开了一种事务处理方法、装置、计算设备及存储介质,属于数据库技术领域。本申请通过针对目标事务确定查询时间段,并以第一时刻作为查询时间段内的一个时间点分界线,对第一时刻之前的历史态数据计算出一个全量分析结果,对第一时刻之后变更得到的数据计算出一个增量分析结果,将全量分析结果和增量分析结果两者结合,最终得到目标分析结果,使得针对全时态的时间轴上的任一个查询时间段,都能够提供在线实时分析和处理服务,如金融场景下支持查询任意时间段内的流水,又如智慧交通场景下支持查询任意时间段内空闲的停车位总数等,能够大大提升数据库系统的事务处理性能。能够大大提升数据库系统的事务处理性能。能够大大提升数据库系统的事务处理性能。

【技术实现步骤摘要】
事务处理方法、装置、计算设备及存储介质


[0001]本申请涉及数据库
,特别涉及一种事务处理方法、装置、计算设备及存储介质。

技术介绍

[0002]随着数据库技术的发展,在数据仓库、大数据分析等场景中,通常会采用基于HTAP(Hybrid Transaction/Analytical Processing,混合交易/分析处理)架构的数据处理系统。在HTAP系统内包括OLTP(On

Line Transaction Processing,在线交易处理)集群和OLAP(On

Line Analytical Processing,在线分析处理)集群,OLTP集群用于处理短时用户交易型事务,具有事务执行时间短、并发度高等特点,对单位时间吞吐量要求较高;OLAP集群用于处理复杂分析型事务,具有事务执行时间长、资源占用多、处理的数据量大等特点。
[0003]在上述HTAP系统中,OLAP集群和OLTP集群之间配置有数据迁移模块,用来将OLTP集群内最新的相关数据迁移到OLAP集群中,以保证OLAP集群和OLTP集群对数据分析和处理的一致性,换言之,传统的HTAP系统仅支持对最新数据提供在线交易和分析功能。

技术实现思路

[0004]本申请实施例提供了一种事务处理方法、装置、计算设备及存储介质,能够并不局限于仅对最新数据提供分析功能、而是针对全时态的时间轴上的任一个查询时间段提供在线实时分析和处理服务。该技术方案如下:
[0005]一方面,提供了一种事务处理方法,该方法包括:
[0006]从目标事务的查询时间段中确定第一时刻,所述第一时刻为对符合所述目标事务的数据查询条件的历史态数据最近一次完成转储的时刻;
[0007]基于所述历史态数据,获取全量分析结果,所述全量分析结果为基于所述目标事务的分析语义对所述历史态数据进行处理所得的结果;
[0008]基于从所述第一时刻起至所述查询时间段的结束时刻之间在所述历史态数据对应的当前态数据上发生的变更,获取增量分析结果,所述增量分析结果为基于所述分析语义对所述变更得到的数据进行处理所得的结果;
[0009]基于所述全量分析结果和所述增量分析结果,获取所述目标事务的目标分析结果。
[0010]一方面,提供了一种事务处理装置,该装置包括:
[0011]确定模块,用于从目标事务的查询时间段中确定第一时刻,所述第一时刻为对符合所述目标事务的数据查询条件的历史态数据最近一次完成转储的时刻;
[0012]第一获取模块,用于基于所述历史态数据,获取全量分析结果,所述全量分析结果为基于所述目标事务的分析语义对所述历史态数据进行处理所得的结果;
[0013]第二获取模块,用于基于从所述第一时刻起至所述查询时间段的结束时刻之间在所述历史态数据对应的当前态数据上发生的变更,获取增量分析结果,所述增量分析结果
为基于所述分析语义对所述变更得到的数据进行处理所得的结果;
[0014]第三获取模块,用于基于所述全量分析结果和所述增量分析结果,获取所述目标事务的目标分析结果。
[0015]在一种可能实施方式中,所述第一获取模块包括:
[0016]查询单元,用于查询是否缓存对第二时刻可见的第一历史态数据的中间分析结果,所述第二时刻为所述查询时间段的开始时刻到所述第一时刻之间的任一时刻;
[0017]确定单元,用于在已缓存所述中间分析结果的情况下,将所述中间分析结果确定为所述全量分析结果;
[0018]第一生成单元,用于在未缓存所述中间分析结果的情况下,生成对所述第一时刻可见的第二历史态数据的所述全量分析结果。
[0019]在一种可能实施方式中,所述第一生成单元包括:
[0020]确定子单元,用于确定所述第二历史态数据的冷热等级,所述冷热等级用于表征在目标时间段内对在所述第二历史态数据上发生操作的频繁程度;
[0021]读取子单元,用于从与所述冷热等级对应的存储设备中,读取所述第二历史态数据;
[0022]处理子单元,用于基于所述分析语义,对所述第二历史态数据进行处理,得到所述全量分析结果。
[0023]在一种可能实施方式中,所述确定子单元用于:
[0024]获取所述目标时间段内对所述第二历史态数据的访问次数;
[0025]获取所述目标时间段内对所述第二历史态数据对应的当前态数据的修改次数;
[0026]基于所述访问次数和所述修改次数,确定所述冷热等级。
[0027]在一种可能实施方式中,冷热等级不同的历史态数据存储在不同的存储设备或者同一存储设备的不同存储介质中。
[0028]在一种可能实施方式中,所述第二获取模块包括:
[0029]获取单元,用于基于所述变更产生的日志,获取所述变更得到的数据;
[0030]第二生成单元,用于比较主键标识相同的历史态数据和变更得到的数据,生成所述增量分析结果。
[0031]在一种可能实施方式中,所述增量分析结果包括变更前的分析结果和变更后的分析结果,所述第二生成单元用于:
[0032]对主键标识相同的历史态数据和变更得到的数据,确定发生变更的字段;
[0033]如果所述数据查询条件不涉及所述发生变更的字段,跳过具有所述主键标识的数据;
[0034]如果所述数据查询条件涉及所述发生变更的字段,对所述第一时刻可见的第二历史态数据,生成所述变更前的分析结果;对所述结束时刻可见的变更得到的目标数据,生成所述变更后的分析结果。
[0035]在一种可能实施方式中,所述第三获取模块用于:
[0036]将所述全量分析结果减去所述变更前的分析结果,得到第一分析结果;
[0037]将所述第一分析结果加上所述变更后的分析结果,得到所述目标分析结果。
[0038]在一种可能实施方式中,所述确定模块还用于:
[0039]当所述目标事务未指定所述查询时间段的开始时刻时,将符合所述数据查询条件的数据的最新版本的生效时刻确定为所述开始时刻;
[0040]当所述目标事务未指定所述查询时间段的结束时刻时,将当前时刻之前距离所述当前时刻达到实时程度参数的时刻确定为所述结束时刻,所述实时程度参数用于表征数据库系统内的分析型事务处理的数据所支持的最大延时。
[0041]在一种可能实施方式中,所述第二获取模块还用于:
[0042]从所述结束时刻开始,每间隔第一目标时长,获取一次所述第一目标时长内发生变更的目标增量分析结果;
[0043]缓存获取到的各个目标增量分析结果。
[0044]在一种可能实施方式中,所述第三获取模块还用于:
[0045]每间隔第二目标时长,基于上一次的全量分析结果与所述第二目标时长内产生的各个目标增量分析结果,获取本次的全量分析结果。
[0046]一方面,提供了一种计算设备,该计算设备包括一个或多个处理器和一个或多个存储器,该一个或多本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种事务处理方法,其特征在于,所述方法包括:从目标事务的查询时间段中确定第一时刻,所述第一时刻为对符合所述目标事务的数据查询条件的历史态数据最近一次完成转储的时刻;基于所述历史态数据,获取全量分析结果,所述全量分析结果为基于所述目标事务的分析语义对所述历史态数据进行处理所得的结果;基于从所述第一时刻起至所述查询时间段的结束时刻之间在所述历史态数据对应的当前态数据上发生的变更,获取增量分析结果,所述增量分析结果为基于所述分析语义对所述变更得到的数据进行处理所得的结果;基于所述全量分析结果和所述增量分析结果,获取所述目标事务的目标分析结果。2.根据权利要求1所述的方法,其特征在于,所述基于所述历史态数据,获取全量分析结果包括:查询是否缓存对第二时刻可见的第一历史态数据的中间分析结果,所述第二时刻为所述查询时间段的开始时刻到所述第一时刻之间的任一时刻;在已缓存所述中间分析结果的情况下,将所述中间分析结果确定为所述全量分析结果;在未缓存所述中间分析结果的情况下,生成对所述第一时刻可见的第二历史态数据的所述全量分析结果。3.根据权利要求2所述的方法,其特征在于,所述生成对所述第一时刻可见的第二历史态数据的所述全量分析结果包括:确定所述第二历史态数据的冷热等级,所述冷热等级用于表征在目标时间段内对在所述第二历史态数据上发生操作的频繁程度;从与所述冷热等级对应的存储设备中,读取所述第二历史态数据;基于所述分析语义,对所述第二历史态数据进行处理,得到所述全量分析结果。4.根据权利要求3所述的方法,其特征在于,所述确定所述第二历史态数据的冷热等级包括:获取所述目标时间段内对所述第二历史态数据的访问次数;获取所述目标时间段内对所述第二历史态数据对应的当前态数据的修改次数;基于所述访问次数和所述修改次数,确定所述冷热等级。5.根据权利要求3或4所述的方法,其特征在于,冷热等级不同的历史态数据存储在不同的存储设备或者同一存储设备的不同存储介质中。6.根据权利要求1所述的方法,其特征在于,所述基于从所述第一时刻起至所述查询时间段的结束时刻之间在所述历史态数据对应的当前态数据上发生的变更,获取增量分析结果包括:基于所述变更产生的日志,获取所述变更得到的数据;比较主键标识相同的历史态数据和变更得到的数据,生成所述增量分析结果。7.根据权利要求6所述的方法,其特征在于,所述增量分析结果包括变更前的分析结果和变更后的分析结果,所述比较主键标识相同的历史态数据和变更得到的数据,生成所述增量分析结果包括:对主键标识相同的历史态数据和变更得到的数据,确定发生变更的字段;
如果所述数据查询条件不涉及所述发生变更的字段,跳过具有所述主键标识的数据;如果所述数据查询条件涉及所述发生变更的字段,对所述第一时刻可见的第...

【专利技术属性】
技术研发人员:熊亮春潘安群韩硕
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1