一种数据逆序查询的方法及终端技术

技术编号:39830971 阅读:15 留言:0更新日期:2023-12-29 16:12
本发明专利技术公开了一种数据逆序查询的方法及终端,对于逆序查询请求,先获取待查询数据的顺序索引得到查询范围,使用二分法在查询范围中进行查询,若二分法的查询结果落入逆序查询请求的目标范围,则基于查询范围查询逆序数据,否则,根据二分法的查询结果和目标范围确定新的查询范围,并返回执行使用二分法在查询范围中进行查询的步骤

【技术实现步骤摘要】
一种数据逆序查询的方法及终端


[0001]本专利技术涉及数据查询
,特别涉及一种数据逆序查询的方法及终端


技术介绍

[0002]目前互联网产品种类繁多,用户的每一个操作都将可能导致大量的数据产生,为了方便运维以及快速定位问题,一般的大型系统都会有专门的日志存储以及查询系统,此系统存储所有的日志记录信息,并提供快速查询功能

一般我们查询日志都是按照时间范围,或者根据关键字进行查询的,并且日志底层逻辑一般也都是按照时间戳进行顺序排序处理的,即按照时间范围顺序查询能够很快的查询出结果

可是如果是逆序条件下查询一定数量的数据,则无法快速查询

[0003]目前的解决方式,一种是查询一定时间范围之内的数据,之后逐条的从头开始遍历查询数据,从某一条处返回满足条件的数据

此方式由于时间范围内的数据条数不固定,无法准确的查询满足条件的数据,可能时间范围内的数据不够,将需要再次扩大时间范围查询,并且逐条遍历的方式,也降低了查询效率

另一种就是新建逆序的时间排序索引,此方式下能够快速查询结果数据,但是,为了满足此场景需要额外新增加一个时间逆序索引,大大增加了系统资源的消耗,无论是内存还是磁盘,都会要求双倍资源


技术实现思路

[0004]本专利技术所要解决的技术问题是:提供一种数据逆序查询的方法及终端,能够在海量大数据环境下提高逆序查询数据的效率

[0005]为了解决上述技术问题,本专利技术采用的技术方案为:
[0006]一种数据逆序查询的方法,包括步骤:
[0007]接收逆序查询请求,获取所述逆序查询请求中待查询数据所在的顺序索引,根据所述顺序索引得到查询范围;
[0008]使用二分法在所述查询范围中进行查询,判断二分法的查询结果是否落入所述逆序查询请求的目标范围,若是,则基于所述查询范围查询逆序数据,否则,根据所述二分法的查询结果和所述目标范围确定新的查询范围,并返回执行使用二分法在所述查询范围中进行查询的步骤

[0009]为了解决上述技术问题,本专利技术采用的另一种技术方案为:
[0010]一种数据逆序查询的终端,包括存储器

处理器以及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0011]接收逆序查询请求,获取所述逆序查询请求中待查询数据所在的顺序索引,根据所述顺序索引得到查询范围;
[0012]使用二分法在所述查询范围中进行查询,判断二分法的查询结果是否落入所述逆序查询请求的目标范围,若是,则基于所述查询范围查询逆序数据,否则,根据所述二分法的查询结果和所述目标范围确定新的查询范围,并返回执行使用二分法在所述查询范围中
进行查询的步骤

[0013]本专利技术的有益效果在于:对于逆序查询请求,先获取待查询数据的顺序索引得到查询范围,使用二分法在查询范围中进行查询,若二分法的查询结果落入逆序查询请求的目标范围,则基于查询范围查询逆序数据,否则,根据二分法的查询结果和目标范围确定新的查询范围,并返回执行使用二分法在查询范围中进行查询的步骤

以此方式,对于逆序查询无需新增逆序索引,在顺序索引的基础之上,采用二分查找方式查询出满足条件的结果数据,大大减少了资源的使用

同时,也无需逐条地遍历顺序索引的记录,能够在顺序索引方式下,大大提高逆序查询数据的效率

附图说明
[0014]图1为本专利技术实施例的一种数据逆序查询的方法的流程图;
[0015]图2为本专利技术实施例的一种数据逆序查询的终端的示意图;
[0016]标号说明:
[0017]1、
一种数据逆序查询的终端;
2、
存储器;
3、
处理器

具体实施方式
[0018]为详细说明本专利技术的
技术实现思路


所实现目的及效果,以下结合实施方式并配合附图予以说明

[0019]请参照图1,本专利技术实施例提供了一种数据逆序查询的方法,包括步骤:
[0020]接收逆序查询请求,获取所述逆序查询请求中待查询数据所在的顺序索引,根据所述顺序索引得到查询范围;
[0021]使用二分法在所述查询范围中进行查询,判断二分法的查询结果是否落入所述逆序查询请求的目标范围,若是,则基于所述查询范围查询逆序数据,否则,根据所述二分法的查询结果和所述目标范围确定新的查询范围,并返回执行使用二分法在所述查询范围中进行查询的步骤

[0022]从上述描述可知,本专利技术的有益效果在于:对于逆序查询请求,先获取待查询数据的顺序索引得到查询范围,使用二分法在查询范围中进行查询,若二分法的查询结果落入逆序查询请求的目标范围,则基于查询范围查询逆序数据,否则,根据二分法的查询结果和目标范围确定新的查询范围,并返回执行使用二分法在查询范围中进行查询的步骤

以此方式,对于逆序查询无需新增逆序索引,在顺序索引的基础之上,采用二分查找方式查询出满足条件的结果数据,大大减少了资源的使用

同时,也无需逐条地遍历顺序索引的记录,能够在顺序索引方式下,大大提高逆序查询数据的效率

[0023]进一步地,所述使用二分法在所述查询范围中进行查询,判断二分法的查询结果是否落入所述逆序查询请求的目标范围,包括:
[0024]使用二分法对所述查询范围进行计算,得到二分法的中位数;
[0025]根据所述中位数将所述查询范围分为第一范围和第二范围,判断所述二分法的中位数是否落入所述逆序查询请求的目标范围

[0026]由上述描述可知,通过计算查询范围的二分法中位数,能够将查询范围分为第一范围和第二范围,便于后续根据中位数来判断具体的查询范围

[0027]进一步地,基于所述查询范围查询逆序数据,包括:
[0028]对所述第一范围进行二分法查询,将所述第一范围划分为第一子范围和第二子范围,若所述目标范围的最小边界值大于或者等于所述第二子范围的最小边界值,则结合所述第二子范围和所述第二范围查询逆序数据,若所述目标范围的最小边界值小于所述第二子范围的最小边界值,则直接在所述查询范围中查询逆序数据

[0029]由上述描述可知,当二分法的中位数落入逆序查询请求的目标范围时,即可根据目标范围的最小边界值和第二子范围的最小边界值来确定逆序查询的查询范围,能够通过缩减数据的查询范围,使其进而定位到比较合适的起始位置,进而在海量数据查询的时候提高逆序查询的效率

[0030]进一步地,还包括:
[0031]将所述第二范围划分为第三子范围和第四子范围,若所述目标范围的最大边界值大于或者等于所述第四子范围的最小边界值,则使用所述第二范围本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种数据逆序查询的方法,其特征在于,包括步骤:接收逆序查询请求,获取所述逆序查询请求中待查询数据所在的顺序索引,根据所述顺序索引得到查询范围;使用二分法在所述查询范围中进行查询,判断二分法的查询结果是否落入所述逆序查询请求的目标范围,若是,则基于所述查询范围查询逆序数据,否则,根据所述二分法的查询结果和所述目标范围确定新的查询范围,并返回执行使用二分法在所述查询范围中进行查询的步骤
。2.
根据权利要求1所述的一种数据逆序查询的方法,其特征在于,所述使用二分法在所述查询范围中进行查询,判断二分法的查询结果是否落入所述逆序查询请求的目标范围,包括:使用二分法对所述查询范围进行计算,得到二分法的中位数;根据所述中位数将所述查询范围分为第一范围和第二范围,判断所述二分法的中位数是否落入所述逆序查询请求的目标范围
。3.
根据权利要求2所述的一种数据逆序查询的方法,其特征在于,基于所述查询范围查询逆序数据,包括:对所述第一范围进行二分法查询,将所述第一范围划分为第一子范围和第二子范围,若所述目标范围的最小边界值大于或者等于所述第二子范围的最小边界值,则结合所述第二子范围和所述第二范围查询逆序数据,若所述目标范围的最小边界值小于所述第二子范围的最小边界值,则直接在所述查询范围中查询逆序数据
。4.
根据权利要求3所述的一种数据逆序查询的方法,其特征在于,还包括:将所述第二范围划分为第三子范围和第四子范围,若所述目标范围的最大边界值大于或者等于所述第四子范围的最小边界值,则使用所述第二范围查询逆序数据,若所述目标范围的最大边界值小于所述第四子范围的最小边界值,则使用所述第三子范围查询逆序数据
。5.
根据权利要求2所述的一种数据逆序查询的方法,其特征在于,根据所述二分法的查询结果和所述目标范围确定新的查询范围,包括:若所述二分法的中位数大于所述第二范围的最大边界值,则将所述第一范围作为新的查询范围,若所述二分法的中位数小于或者等于所述第二范围的最小边界值,则将所述第二范围作为新的查询范围,返回执行使用二分法在所述查询范围中进行查询的步骤
。6.
一种数据逆序查询的终端,包括存储器

...

【专利技术属性】
技术研发人员:刘德建郭孟祺陈娟郭凤英郑坦陈宏
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:

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

1