【技术实现步骤摘要】
一种基于RadixSpline加速键值对检索的LSMT读优化方法
[0001]本专利技术属于数据库系统存储
,特别涉及一种基于
RadixSpline
加速键值对检索的
LSMT
读优化方法
。
技术介绍
[0002]日志结构合并树
(Log
‑
Structured
‑
Merge Tree
,
LSMT)
是一种存储引擎的底层结构,其适配磁盘硬件特性,将大量的随机写转换成顺序写以获得高效的写入能力,被广泛用在数据密集型系统中
。
传统的日志结构合并树将键和值存储在一起,在层间合并时由于值重复写磁盘引入了严重的写放大问题
。
针对此问题,
Wisckey
采取键值分离的设计,将值存储在分离的值日志文件上,在
SSTable
中只存储值的指针,大大减小层间合并时磁盘的写入量
。
[0003]学习索引将人工智能的思想应用于数据库系统,用机器学习模型替代传统的数据库索引,维护键和其位置之间的映射关系,预测输入键的偏移量,将键值对的查找最终限定在了一个误差范围内,如果键在这个最终限定的范围中存在,可以通过线性查找找到实际位置
。Wisckey
中
SSTable
存的值是所占空间等大的指针,
SSTable
中的数据已排序且不改变,符合学习索引的应用条件
。RadixSpline< ...
【技术保护点】
【技术特征摘要】
1.
一种基于
RadixSpline
加速键值对检索的
LSMT
读优化方法,其特征在于,所述方法包括以下步骤:构建并训练
RadixSpline
模型;所述
RadixSpline
模型包含前缀表和模型数组;所述前缀表用于在构造模型数组的同时判断新加入模型数组元素的前缀,当新加入模型数组元素的前缀与现有的模型数组元素的前缀不一致时,将该新前缀与以及其指向的模型数组元素下标记录到前缀表中;所述模型数组中的元素和数据集元素一致;所述数据集用于存储键
‑
偏移量对;将训练好的
RadixSpline
模型融合进
LSM
‑
Tree
架构,使
RadixSpline
模型替换原有
SSTable
内键值对检索方式;通过
RadixSpline
模型进行预测获取键值对偏移量的误差区间,然后在偏移量的误差区间内线性查找在
SSTable
内检索键值对
。2.
根据权利要求1所述的一种基于
RadixSpline
加速键值对检索的
LSMT
读优化方法,其特征在于,将训练好的
RadixSpline
模型融合进
LSM
‑
Tree
架构包括:在所有生成日志结构合并树
SSTable
的时刻将生成日志结构合并树
SSTable
的键值对列表传送给
RadixSpline
模型保存;取消
SSTable
结构原有的读放大优化结构,包括取消二分查找块
、
过滤器块和
LSM
‑
Tree
迭代器
。3.
根据权利要求2所述的一种基于
RadixSpline
加速键值对检索的
LSMT
读优化方法,其特征在于,将训练好的
RadixSpline
模型融合进
LSM
‑
Tree
架构还包括:对日志结构合并树
SSTable
的键值对列表进行处理,将生成日志结构合并树
SSTable
中的最大值和最小值相减,记录差值中前缀0的个数
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。