一种数据查询方法、装置及终端设备制造方法及图纸

技术编号:32676388 阅读:11 留言:0更新日期:2022-03-17 11:32
本申请适用于数据处理技术领域,提供了一种数据查询方法、装置及终端设备,包括:根据查询命令中的归档字段确定路由策略;当路由策略为第一路由策略时,从实时数据库中获取对应的实时数据并返回实时数据;当路由策略为第二路由策略时,从历史数据库中获取对应的历史数据并返回历史数据;当路由策略为第三路由策略时,从实时数据库中获取对应的实时数据,并从历史数据库中获取对应的历史数据,返回实时数据和历史数据,通过归档字段来确定路由策略,即确定出了需要查询的订单数据对应存储在哪个数据库表中,再基于路由策略去获取对应的订单数据,实现对于冷热数据分离的数据系统,同时查询出历史数据和实时数据的需求。时查询出历史数据和实时数据的需求。时查询出历史数据和实时数据的需求。

【技术实现步骤摘要】
一种数据查询方法、装置及终端设备


[0001]本申请属于数据处理
,尤其涉及一种数据查询方法、装置、终端设备及计算机可读存储介质。

技术介绍

[0002]随着用户量的提升和业务的逐步完善,订单系统中的订单数据量会越来越大,订单系统在运行一段时间后,由于存储和管理的订单数据量的累积,会使得订单系统在查询数据时面对高并发读写请求的压力,严重影响查询效率。
[0003]针对这种情况,目前通常是通过分库分表的方式来减少每个表中的数据量,以提高查询效率,例如根据某个维度对数据库(存储订单后数据的库)进行水平切分,从而使每个数据表的数据量大小控制在一定范围内,单表查询性能保持在比较好的范围,然而分库分表需要对原数据库进行较大的改造,而且存在不同分表的数据在进行聚合分页查询时的查询性能较差,因此通过分库分表的方式来提高查询效率的方式存在实现难度高且对于聚合分页查询的查询性能差的问题。
[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]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据查询方法,其特征在于,包括:根据查询命令中的归档字段确定路由策略;当所述路由策略为第一路由策略时,从实时数据库中获取对应的实时数据并返回所述实时数据;当所述路由策略为第二路由策略时,从历史数据库中获取对应的历史数据并返回所述历史数据;当所述路由策略为第三路由策略时,从实时数据库中获取对应的实时数据,并从历史数据库中获取对应的历史数据,返回所述实时数据和所述历史数据。2.如权利要求1所述的数据查询方法,其特征在于,所述根据查询命令中的归档字段确定路由策略,包括:根据所述归档字段确定所述查询命令对应的数据分布情况;根据所述查询命令对应的数据分布情况设置路由策略。3.如权利要求2所述的数据查询方法,其特征在于,所述根据所述归档字段确定所述查询命令对应的数据分布情况,具体包括:根据所述查询命令中包含的归档字段与归档字段阈值确定数据分布情况。4.如权利要求1所述的数据查询方法,其特征在于,所述当所述路由策略为第二路由策略时,从历史数据库中获取对应的历史数据并返回所述历史数据,包括:根据所述查询命令确定数据表名;将所述数据表名替换为相应的历史数据表名;从与所述历史数据表名对应的历史数据表中获取对应的历史数据并返回所述历史数据。5.如权利要求1所述的数据查询方法,其特征在于,所述当所述路由策略为第三路由策略时,从实时数据库中获取对应的实时数据,并从历史数据库中获取对应的历史数据,返回所述实时数据和所述历史数据,包括:从所述实时数据库中获取对应的实时数据;根据所述查询命令确定数据表名,将所述数据表名替换为相应的历史数据表名,并从与所述历史数据表名对应的历史数据表中获取对应的历史数据;将所述实时数据和所述历史数据进行融合,得到目标数据;返回所述目标数据。6.如权利要求1所述的数据查询方法,其特征在于,当所述查询命令为分页查询命令时,所述当所述路由策略为第三路由策略时,从实时数据库中获取...

【专利技术属性】
技术研发人员:张松祥王健苏剑树
申请(专利权)人:平安付科技服务有限公司
类型:发明
国别省市:

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

1