当前位置: 首页 > 专利查询>浙江大学专利>正文

一种内存数据库中的工作负载自适应学习型索引方法技术

技术编号:29042468 阅读:61 留言:0更新日期:2021-06-26 05:52
本发明专利技术公开了一种内存数据库中的工作负载自适应学习型索引方法。该方法结合基数树和具有最大误差界的分段线性模型,通过机器学习模型利用数据分布来降低索引的内存占用,同时保持稳定的查询性能。在此基础上,使用一种高效的插入缓冲来降低数据插入更新的成本,同时为了缓解数据插入对索引性能的影响,使用两种工作负载自适应的重组优化方法,有针对性地对工作负载中点查询和范围查询涉及的热点数据进行优化。该方法具有较高的构建效率和较低的内存占用,也保证了相对高效的查询性能,并且能够很好地支持插入和更新;同时通过感知查询工作负载有针对性地进行重组优化,以较低的代价降低了插入对于索引性能的影响。价降低了插入对于索引性能的影响。价降低了插入对于索引性能的影响。

【技术实现步骤摘要】
一种内存数据库中的工作负载自适应学习型索引方法


[0001]本专利技术属于数据库系统
,具体地涉及一种在内存数据库中的高效索引方法。

技术介绍

[0002]索引作为一种用于高效检索的数据结构,在内存数据库系统中得到了广泛的应用。但由于数据量的爆炸式增长,索引大量的内存消耗影响了数据库系统的性能和扩展性。减少索引的内存占用,同时保持索引高效稳定的查询性能具有重要的现实意义和应用价值。
[0003]学习型索引的提出为解决上述问题提供了新的契机,通过利用数据分布可以显著降低索引的大小。但学习型索引最大的问题在于对插入和更新支持较弱,这大大限制了学习型索引的使用场景。现有关于解决学习型索引插入更新的研究工作往往需要键值的大量移动或者容量较大的缓冲区,会带来较大的开销,增加各项操作的延迟,而内存数据库本质上是为了追求更快速的系统响应而设计的,降低数据插入更新的成本对于学习型索引在内存数据库中的应用十分迫切。

技术实现思路

[0004]针对现有技术的不足,本方法提出了一种内存数据库中的工作负载自适应学习型索引方法。该方法具有较本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种内存数据库中的工作负载自适应学习型索引方法,其特征在于,包括以下步骤:(1)双层结构设计,具体为:(1.1)下层在满足最大误差界的前提下,将数据分成尽可能少的不定长分段。每个分段中的数据都训练一个机器学习模型,通过模型预测进行查询。不同的分段之间组织为链表结构,相对有序。(1.2)每一个分段,可看作五元组<keys,values,slope,pre_segment,next_segment>,其中keys和values是存储数据的键值数组,slope是模型参数,pre_segment指向上一个分段的指针,next_segment是指向下一个分段的指针。键值在数组中从0位置开始有序存放。使用一个满足最大误差界的线性插值模型f(key)=slope
×
key近似分段键值数组中数据的累计分布。(1.3)上层使用基数树来管理分段,也可以使用其他支持查询给定键下界的数据结构。假设第i个分段中的最大键为max_key
i
,分段的地址为seg
i
,则在基数树中存储形如<max_key
i
,seg
i
>的一系列键值对。(2)缓冲的插入,具体为:当新插入一个键值key时,首先查找要插入的分段,然后需要在分段的键值数组中找到第一个不小于key的位置,在此位置使用一个缓冲区,来容纳新的插入。在任一个分段的键值数组seg.keys中,其pos位置对应的缓冲区中的键key,满足seg.keys[pos

1]<key≤seg.keys[pos]。缓冲区默认采用...

【专利技术属性】
技术研发人员:寿黎但陈井爽陈珂陈刚骆歆远
申请(专利权)人:浙江大学
类型:发明
国别省市:

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

1