[发明专利]一种基于折半查找的时序数据库迭代器查询优化方法在审

专利信息
申请号: 202310006270.2 申请日: 2023-01-04
公开(公告)号: CN116361324A 公开(公告)日: 2023-06-30
发明(设计)人: 王云龙;于暄 申请(专利权)人: 上海沄熹科技有限公司
主分类号: G06F16/2453 分类号: G06F16/2453;G06F16/2458
代理公司: 济南信达专利事务所有限公司 37100 代理人: 阚恭勇
地址: 200120 上海市浦东新区中国(上海)自由贸*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 折半 查找 时序 数据库 迭代器 查询 优化 方法
【说明书】:

发明提供一种基于折半查找的时序数据库迭代器查询优化方法,属于时序数据库领域,本发明基于数据特点,在使用迭代器进行查询时,放弃逐个判断block块是否满足条件,使用折半查找定位第一个满足查询条件的block及第一条满足查询条件的行,从而实现性能提升。

技术领域

本发明涉及时序数据库领域,尤其涉及一种基于折半查找的时序数据库迭代器查询优化方法。

背景技术

ZDP是一个集云(C)边(E)端(T)一体的时序数据库平台,数据通过终端的采集器收集后同步到边端,边端提供数据持久化能力,整体采用LSM架构,数据先写入内存,等内存数据达到阈值后进行Flush持久化。内存的数据以block为单位进行内存分配和回收,由WriteCache组件进行统一管理,每个block大小均相等,依次放在WriteCache维护的一个队列里,队列头的block数据最老,block按照时间戳依次排序,每个block内部数据也是基于时间错排序的。当上层caller需要读取内存的数据时,就需要生成一个迭代器,传入参数(min_ts,max_ts)就可以进行扫描读取。而当前默认实现是通过逐个遍历的方式来确定满足条件的block以及block中第一条满足条件的行,这成为生成迭代器性能瓶颈。

发明内容

为了解决以上技术问题,本发明提供了一种基于折半查找的时序数据库迭代器查询优化方法,较大的提升迭代器查询性能。

本发明的技术方案是:

一种基于折半查找的时序数据库迭代器查询优化方法,在迭代器初始化阶段,通过折半查找方法进行搜索满足条件的block集合左右边界,同时用折半查找定位第一条满足条件的行,代替了逐个遍历block来判断是否满足要求,提升数据库读性能。

迭代器本身维护了满足读条件的block集合,在初始化过程中,不再逐个遍历block判断是否满足条件,而是基于数据是有序的特征,通过折半查找的方式来实现block集合左右边界的确定,实现迭代器读性能提升。

进一步的,

实现包括内容如下:

1)迭代器的初始化,首先是确定满足条件的block集合和第一条满足条件的行位置row_cursor_,之后才可以正常使用迭代器。

2)当WriteCache的block为空、option.min_tslast_block.max_ts、option.max_tsfirst_block.min_ts三种情况时,直接返回,代表当前没有满足条件的数据。

3)若存在满足条件的数据,当option.max_tslast_block.min_ts,则代表已经找到右边界,记has_found_right_boundary=true;当option.min_tsfirst_block.max_ts,则代表已经找到左边界,记has_found_left_boundary=true。

4)若has_found_left_boundary=false,则代表还未确定左边界,需要使用折半查找来定位。首先初始化left=0,right=block_num-1,mid=(left+right)/2,通过不断比较option.min_ts与mid_block.max_ts大小,最终确定左边界;同理,来确定右边界。

再进一步的,当rightleft+1条件不满足时,跳出循环。当mid_block.max_tsoption.min_ts时,代表数据在mid的右边,故设置left=mid,否则设置right=mid。跳出循环后,可以确定right-left=1,因为确定数据存在,故left_boundary=right,同理找出右边界。最终把左右边界内的block添加到迭代器维护的block列表中。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海沄熹科技有限公司,未经上海沄熹科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202310006270.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top