【技术实现步骤摘要】
面向容错的NVM持久化过程冗余信息的压缩方法和装置
本专利技术涉及计算机持久化存储器领域,具体涉及一种面向容错的NVM持久化过程冗余信息的压缩方法和装置,用于压缩持久化存储中的冗余信息以提高持久化存储器的写性能和寿命。
技术介绍
近年来,随着计算机领域的高速发展,中央处理器CPU的处理能力得到了极大提升,而存储系统的性能提升却相对较小,传统的主存-辅存结构间存在巨大的性能鸿沟,已经成为计算机系统的性能瓶颈。一方面,在传统的主存-辅存体系中,主存(一般为DRAM,DynamicRandomAccessMemory,动态随机存取存储器)通常具有容量小、速度快、易失(断电数据丢失)等特点;而辅存(磁盘、磁带、光盘、闪存)通常具有容量大、速度慢、非易失(断电数据不丢失)等特点。这样的体系很大程度上是由存储设备的硬件特性决定的,但其已经日渐不能满足现今的存储要求。比如内存数据库系统,将所有的海量数据常驻主存,辅存只做备份,这样可以有效提高性能,但是由于DRAM的易失性,一旦断电或者系统崩溃就可能造成数据丢失,因此需要采取各种容错的手段及时保存数据和保持数据的一致性,通常的方 ...
【技术保护点】
1.一种面向容错的NVM持久化过程冗余信息的压缩方法,其特征在于实施步骤包括:1)在支持事务持久化的线程中分配写集合WriteSet、地址队列queue以及多个值队列vqueue_X,其中值队列vqueue_X用于记录新旧只有低X位不同的值,在压缩值时各记录值的低X位写入持久化日志中,且不同值队列vqueue_X的X值不同;2)在NVM中分配持久化日志保存区;3)在事务期间将所有持久化写操作信息写入写集合WriteSet;4)扫描写集合WriteSet,对新旧值完全相同的写集合元素进行过滤,对新旧值不完全相同的写集合元素,将新旧只有低X位不同的值的写集合元素的值分别加入相应 ...
【技术特征摘要】
1.一种面向容错的NVM持久化过程冗余信息的压缩方法,其特征在于实施步骤包括:1)在支持事务持久化的线程中分配写集合WriteSet、地址队列queue以及多个值队列vqueue_X,其中值队列vqueue_X用于记录新旧只有低X位不同的值,在压缩值时各记录值的低X位写入持久化日志中,且不同值队列vqueue_X的X值不同;2)在NVM中分配持久化日志保存区;3)在事务期间将所有持久化写操作信息写入写集合WriteSet;4)扫描写集合WriteSet,对新旧值完全相同的写集合元素进行过滤,对新旧值不完全相同的写集合元素,将新旧只有低X位不同的值的写集合元素的值分别加入相应的值队列vqueue_X,并按照值队列vqueue_X中X的值从大到小的顺序将新旧值不完全相同的写集合元素的地址加入地址队列queue;5)针对地址队列queue中的地址信息进行压缩使得一组相邻地址的相同部分被消除,将压缩后的地址信息写入地址记录;6)将各个值队列vqueue_X中所有元素的N位值的低X位写入值记录,从而将值的冗余信息消除。2.根据权利要求1所述面向容错的NVM持久化过程冗余信息的压缩方法,其特征在于,步骤1)中的多个值队列vqueue_X包括值队列vqueue_N、vqueue_N/2、vqueue_N/22、…、vqueue_16、vqueue_8,其中,N为持久化日志的位宽,vqueue_N用于记录新旧完全不同的值,在压缩值时各记录值的低N位写入持久化日志中;vqueue_N/2用于记录新旧只有低N/2位不同的值,在压缩值时各记录值的低N/2位写入持久化日志中;……;vqueue_16用于记录新旧只有低16位不同的值,在压缩值时各记录值的低16位写入持久化日志中;vqueue_8用于记录新旧只有低8位不同的值,在压缩值时各记录值的低8位写入持久化日志中。3.根据权利要求2所述面向容错的NVM持久化过程冗余信息的压缩方法,其特征在于,步骤2)中在NVM中分配持久化日志保存区时每一个持久化日志包含3个部分,对应各个值队列vqueue_X的值的数目、多个压缩地址的记录、多个压缩值的记录。4.根据权利要求2所述面向容错的NVM持久化过程冗余信息的压缩方法,其特征在于,所述持久化日志的位宽为64位,可类同扩展至128位或更高。5.根据权利要求1所述面向容错的NVM持久化过程冗余信息的压缩方法,其特征在于,步骤3)的详细步骤包括:针对持久化写操作tx_write要写入的地址、值构成的信息对<addr,value>,判断地址addr在写集合Writ...
【专利技术属性】
技术研发人员:彭林,张文喆,陈俊峰,黄春,唐滔,方建滨,左克,姜浩,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:湖南,43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。