【技术实现步骤摘要】
一种B+树的存取方法、装置和计算机可读存储介质
本专利技术涉及数据存储
,特别是涉及一种B+树的存取方法、装置和计算机可读存储介质。
技术介绍
在全闪存阵列存储系统中,由于其结构的特殊性,大量采用B+树结构。例如,全闪存阵列普遍采用自动精简的容量分配方式(thinprovisioning),其卷的逻辑地址与卷在磁盘阵列(RedundantArraysofIndependentDisks,RAID)上的物理地址不再是线性对应关系,而变成了近似随机映射的关系。为了管理这种映射关系,采用B+树来保存从卷逻辑地址到物理地址的映射,并且采用B+树来保存物理地址到逻辑地址的逆映射。全闪存阵列的重删功能,采用B+树来保存数据块HASH值到物理地址的映射。动态随机存取存储器(DynamicRandomAccessMemory,DRAM)是一种较为常见的系统内存。由于DRAM内存是较为昂贵的部件,因此存储系统中通常只配置较少数量的DRAM内存以降低成本。现有技术中,B+树的数据通常保存在固态硬盘(SolidStateDrives ...
【技术保护点】
1.一种B+树的存取方法,其特征在于,包括:/n获取到B+树创建指令时,判断是否存在映射到DRAM内存的空闲的底层树文件;/n若是,则将所述B+树的底层数据存储至所述底层树文件;/n若否,则新建一个目标底层数文件,并将所述目标底层树文件映射至DRAM内存,以便于将所述B+树的底层数据存储至所述目标底层树文件中;/n当所述B+树的层数大于或等于预设阈值时,则将所述B+树中层数大于或等于所述预设阈值的数据存储至预先设定的存储区域。/n
【技术特征摘要】
1.一种B+树的存取方法,其特征在于,包括:
获取到B+树创建指令时,判断是否存在映射到DRAM内存的空闲的底层树文件;
若是,则将所述B+树的底层数据存储至所述底层树文件;
若否,则新建一个目标底层数文件,并将所述目标底层树文件映射至DRAM内存,以便于将所述B+树的底层数据存储至所述目标底层树文件中;
当所述B+树的层数大于或等于预设阈值时,则将所述B+树中层数大于或等于所述预设阈值的数据存储至预先设定的存储区域。
2.根据权利要求1所述的方法,其特征在于,所述B+树对应有第一层级、第二层级和第三层级;其中,第一层级的数据作为底层数据;
相应的,所述当所述B+树的层数大于或等于预设阈值时,则将所述B+树中大于或等于所述预设阈值的数据存储至预先设定的存储区域包括:
将所述B+树的第二层级的数据存储至DCPMM内存中;
将所述B+树的第三层级的数据存储至预设的硬盘中。
3.根据权利要求2所述的方法,其特征在于,在所述获取到B+树创建指令时,判断是否存在映射到内存的底层树文件之前还包括:
将所述DCPMM内存的最小读写粒度作为所述B+树的节点容量。
4.根据权利要求3所述的方法,其特征在于,所述将所述B+树的底层数据存储至所述底层树文件包括:
将所述B+树的底层数据按照所述节点容量向所述底层树文件中存储各节点数据;其中,每个节点数据的键值对中存储有下一层级节点的偏移地址。
5.根据权利要求4所述的方法,其特征在于,还包括:
当获取到数据查询指令时,依据所述数据查询指令中携带的逻辑地址,确定出根节点;
根据所述根节点中包含的偏移地址,确定出叶子节点;并读取所述叶子节点对应的数据。
6.根据权利要求2所述的方法,其特征在于,还包括:
当获取到数据修改指令时,判断所述DRAM内存中是否存在与所述数据修改指令中携带的节点标识相匹配的节点数据;
若是,则依据所述数据修改指令中携带待替换数据,对所述节点数据进行修改,并对修改...
【专利技术属性】
技术研发人员:来炜国,刘志勇,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。