[发明专利]数据访问方法及计算设备在审
申请号: | 202110601072.1 | 申请日: | 2021-05-31 |
公开(公告)号: | CN113392087A | 公开(公告)日: | 2021-09-14 |
发明(设计)人: | 尚灿芳;黄贵;王剑英 | 申请(专利权)人: | 阿里巴巴新加坡控股有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/22 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 刘戈;曹威 |
地址: | 新加坡珊顿道*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 访问 方法 计算 设备 | ||
本申请实施例提供一种数据访问方法及计算设备。其中,所述方法包括:在全部读取请求访问第一版本索引数据的情况下,检测所述索引数据版本更新,执行如下切流操作;其中,所述第一版本为当前最新版本;跟随所述索引数据的版本更新,控制由少到多的读取请求逐步切换至访问最新版本索引数据,以及控制其余读取请求访问历史版本索引数据;检测全部读取请求切换至访问最新版本索引数据的情况下,停止执行所述切流操作。本申请实施例提供的技术方案降低了对数据读取效率的影响。
技术领域
本申请实施例涉及数据处理技术领域,尤其涉及一种数据访问方法及计算设备。
背景技术
采用LSM-Tree(The Log-Structured Merge-Tree,日志结构合并树)架构的存储系统,是以追加方式写入数据,不更新原有数据。写入操作会首先写入内存,当内存数据达到相应阈值,会冻结为一层之后写入持久化存储介质中,并和持久化存储介质中的数据进行合并。持久化存储介质上的数据也可以按照层级组织进行分层存储,每一层中的数据达到相应阈值之后就会和下一层中的数据进行合并。所有写入的数据,无论是在内存中,还是持久化存储介质中都以主键(Key)排序好后存放。
现有的一种采用LSM-Tree架构的存储系统,在持久化存储介质中是以数据块形式存储数据,并为每个数据块建立索引信息以快速定位数据块。数据块的索引信息及内存数据会组织形成索引数据,可知数据写入操作及数据合并操作均会更新索引数据,此外,为了提高数据读取效率,会将持久化存储介质中的热数据块缓存至内存中。当接收到对目标key对应目标数据的读取请求时,会首先访问索引数据中记录的内存数据,若内存数据中不存在该目标数据,再基于数据块的索引信息,确定目标数据所在目标数据块,之后,会首先读取缓存数据中,若缓存数据中存在该目标数据块即可以从中读取目标数据,若不存在,再逐层读取持久化存储介质直至找到该目标数据块以读取目标数据。
由于合并操作会将相邻层的数据重新排序,生成新数据块,并更新索引数据,而在缓存数据没有更新的情况,若接收到读取请求,基于更新之后的索引数据,目标数据若在新数据块中,而缓存数据中并未缓存该新数据块的情况下,就会从持久化存储介质中读取,可能造成大量读取请求都会访问持久化存储介质,导致读取性能抖动,产生读取延迟,影响数据读取效率。
发明内容
本申请实施例提供一种数据访问方法及计算设备,用以解决现有技术中影响数据读取效率的技术问题。
第一方面,本申请实施例中提供了一种数据访问方法,包括:
在全部读取请求访问第一版本索引数据的情况下,检测所述索引数据版本更新,执行如下切流操作;其中,所述第一版本为当前最新版本;
跟随所述索引数据的版本更新,控制由少到多的读取请求逐步切换至访问最新版本索引数据,以及控制其余读取请求访问历史版本索引数据;
检测全部读取请求切换至访问最新版本索引数据的情况下,停止执行所述切流操作。
可选地,停止所述切流操作之后,所述方法还包括:
删除历史版本的索引数据。
可选地,还包括:
释放持久化存储介质中未被任意版本索引数据引用的数据块。
可选地,所述控制其余读取请求访问历史版本索引数据包括:
控制其余读取请求访问所述第一版本索引数据。
可选地,还包括:
停止访问任一历史版本索引数据之后,删除该历史版本索引数据。
可选地,所述切流操作进一步包括:
确定是否写入新数据;
若是,控制全部读取请求切换至访问最新版本索引数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴新加坡控股有限公司,未经阿里巴巴新加坡控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110601072.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:分布式事务处理方法、设备及存储介质
- 下一篇:一种具有提示功能的光伏发电系统
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置