【技术实现步骤摘要】
一种RAID卡的写缓存方法、系统、设备及存储介质
[0001]本专利技术涉及存储
,特别是涉及一种RAID卡的写缓存方法、系统、设备及存储介质。
技术介绍
[0002]目前,在发展中出现了通过RAID(Redundant Arrays of Independent Disks,独立磁盘冗余阵列)管理硬盘的方法,可以提高数据的访问性能,同时RAID阵列也能够提供一定程度的数据冗余。最早的RAID阵列由软件实现,随着发展产生了专门用来提供RAID功能的硬件设备,即RAID卡,可以更为高效地进行IO(Input/Output,读写)处理操作。RAID卡中同样设计了一些特定的功能用来加速硬盘的数据读取,其中写缓存就是一个重要的功能。目前实现RAID卡写缓存的方式为红黑树,因为红黑树不仅能够保证数据读取序列的顺序性,也能够保持树的平衡,并且可以提供对数级的读写访问速度。图1a是一个用来进行数据缓存的红黑树结构,红黑树整体遍历上可以保证有序性,和磁盘写缓存的需求相适应。图1a中进行中序遍历后数据下盘在磁道结构上是顺序的,可以减少寻道时间,图1a的下盘次序为2、5、9、12、13、15、18、20、26、30。但是,使用红黑树实现数据插入和删除时,为了不破坏红黑树的性质需要进行节点的左旋/右旋操作,这些旋转操作不仅次数多,并且实现方式包括后续的问题排查复杂。例如图1b为一种场合中的旋转操作,通过右旋操作修正子树深度,类似的操作基本在每次插入或者删除节点数据的时候都需要进行。此外当存在并发插入和删除时,需要给正在调整的节点的兄 ...
【技术保护点】
【技术特征摘要】
1.一种RAID卡的写缓存方法,其特征在于,包括:接收携带有地址信息和写数据内容的写指令;根据所述地址信息,按照跳跃表的结构进行索引,并且在索引过程中,在当前进行索引的层中设置加锁区域;在索引完成之后,在所述跳跃表的数据层中对应于所述地址信息的位置写入所述地址信息和所述写数据内容,作为写入的节点的节点数据;其中,RAID卡中的所述跳跃表为用于进行写缓存的跳跃表,包括多层索引层和1层数据层,所述数据层中包括多个节点,表示的是当前待落盘的各个写缓存数据;在所述数据层中,基于节点数据中的地址信息进行各个节点的顺序排列。2.根据权利要求1所述的RAID卡的写缓存方法,其特征在于,在所述数据层中,基于节点数据中的逻辑地址从小到大的顺序,进行各个节点的顺序排列。3.根据权利要求2所述的RAID卡的写缓存方法,其特征在于,在所述跳跃表的每一层索引层中,该层索引层的各个节点按照节点键值从小到大的顺序进行排列,并且该层索引层的各个节点指向下一层索引层中具有相同节点键值的节点;所述跳跃表最下层的索引层中的各个节点指向所述数据层中具有相同节点键值的节点;在所述数据层中,各个节点的节点数据中的逻辑地址,作为该节点的键值。4.根据权利要求2所述的RAID卡的写缓存方法,其特征在于,从所述跳跃表中最上层的索引层至最下层的索引层,节点的数量递增。5.根据权利要求4所述的RAID卡的写缓存方法,其特征在于,从所述跳跃表中最上层的索引层至最下层的索引层,节点的数量按照翻倍的原则递增。6.根据权利要求1所述的RAID卡的写缓存方法,其特征在于,在索引过程中,在当前进行索引的层中设置加锁区域,包括:在对所述跳跃表中最上层的索引层进行索引时,基于最上层的索引层中的最小节点和最大节点确定出加锁边界,并设定最上层的索引层的整层均为加锁区域;在对所述跳跃表中最上层的索引层之外的其它层进行索引时,基于上一层的索引结果对当前的所述加锁边界进行缩短,并基于缩短之后的加锁边界设定加锁区域。7.根据权利要求6所述的RAID卡的写缓存方法,其特征在于,在任意一层索引层设定的加锁区域均为写锁,在所述数据层设定的加锁区域为读写锁。8.根据权利要求1所述的RAID卡的写缓存方法,其特征在于,还包括:在任意一层的两个相邻的指向性节点之间,如果非指向性节点的数量超过第一阈值,则从这两个相邻的指向性节点之间中的非指向性节点中,选取一个非指向性节点;将选取的该非指向性节点添加至上一层,以使得该非指向性节点变为指向性节点;其中,对于任意一层中的任意一个节点,当该节点被上一层节点索引时,该节点为指向性节点,否则节点为非指向性节点。9.根据权利要求8所述的RAID卡的写缓存方法,其特征在于,在任意一层的两个相邻的指向性节点之间,如果非指向性节点的数量超过第一阈值,则从这两个相邻的指向性节点之间中的非指向性节点中,选取一个非指向性节点,包括:在任意一层的两个相邻的指向性节点之间,如果非指向性节点的数量超过第一阈值,
则从这两个相邻的指向性节点之间中的非指向性节点中,随机选取一个非指向性节点。10.根据权利要求8所述的RAID卡的写缓存方法,其特征在于,在任意一层的两个相邻的指向性节点之间,如果非指向性节点的数量超过第一阈值,则从这两个相邻的指向性节点之间中的非指向性...
【专利技术属性】
技术研发人员:王辉,王见,孙明刚,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。