预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共11页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN107728937A(43)申请公布日2018.02.23(21)申请号201710834389.3(22)申请日2017.09.15(71)申请人上海交通大学地址200240上海市闵行区东川路800号(72)发明人黄林鹏朱燕民沈艳艳刘昊(74)专利代理机构上海汉声知识产权代理有限公司31236代理人郭国中(51)Int.Cl.G06F3/06(2006.01)G06F11/10(2006.01)权利要求书2页说明书6页附图2页(54)发明名称一种使用非易失性内存介质的键值对持久存储方法及系统(57)摘要本发明提供了一种使用非易失性内存介质的键值对持久存储方法及系统,同时使用易失性内存介质和非易失性内存介质构建持久键值存储系统,在易失性内存介质中构建静态散列表接收来自客户端的读写访问请求;在非易失性内存介质中构建动态散列表存储键值对的元数据和键值对在数据区的内存偏移地址,在非易失性内存中的动态散列表之后构建数据存储区,存放键值对大小、键值对数据和键值对校验和;使用结合键值对校验和的检查点的机制,维护持久键值存储系统的数据一致性。本发明利用了不同内存特性的优点,提升性能的同时实现了对键值数据对的持久有效存储、兼顾了内存利用的高效率,降低了维护一致性的系统代价。CN107728937ACN107728937A权利要求书1/2页1.一种使用非易失性内存介质的键值对持久存储方法,其特征在于,同时使用易失性内存介质和非易失性内存介质构建持久键值存储系统,并包括步骤:易失性内存介质构建步骤:在易失性内存介质中构建静态散列表接收来自客户端的读写访问请求;非易失性内存介质构建步骤:在非易失性内存介质中构建动态散列表存储键值对的元数据和键值对在数据区的内存偏移地址,在非易失性内存中的动态散列表之后构建数据存储区,存放键值对大小、键值对数据和键值对校验和;数据一致性保障步骤:使用结合键值对校验和的检查点的机制,维护持久键值存储系统的数据一致性。2.根据权利要求1所述的使用非易失性内存介质的键值对持久存储方法,其特征在于,所述静态散列表大小固定,每一个散列表中含有2^16个桶,每个桶中含有四个存储单元,每个存储单元中含有64位的键的散列值、键值对在非易失性内存存储区中64位的内存偏移地址和32位的键值对校验和。3.根据权利要求2所述的使用非易失性内存介质的键值对持久存储方法,其特征在于,所述静态散列表中的散列算法采用两个散列函数的布谷鸟散列算法,当静态散列表的基本填满时,对该静态散列表进行固定操作,固定后的静态散列表将通过合并线程和位于非易失性内存中动态散列表进行合并,完成动态扩展。4.根据权利要求3所述的使用非易失性内存介质的键值对持久存储方法,其特征在于,所述动态散列表的初始大小和一个静态散列表相同,含有2^16个桶,每个桶中含有四个存储单元,每个存储单元中含有一个1位的标志位,该标志位标识该存储单元是否已被占用,一个64位的键的散列值,一个64位的键值对在非易失性内存存储区中的内存偏移地址和一个32位的键值对校验和。5.根据权利要求4所述的使用非易失性内存介质的键值对持久存储方法,其特征在于,所述结合键值对校验和的检查点的机制包括:在完成每次静态散列表合并时,向动态散列表中原本存放内存偏移地址和校验和的部位,存放一个固定内容的值和一个递升版本号用来记录本次合并操作的完成,并在系统恢复或重启时,根据最新的检查点回溯比对键值对校验和,找出校验和不一致的键值对并且丢弃,从而维护系统的数据一致性。6.一种使用非易失性内存介质的键值对持久存储系统,其特征在于,包括易失性内存介质:包括静态散列表,接收来自客户端的读写访问请求;非易失性内存介质:包括动态散列表,存储键值对的元数据和键值对在数据区的内存偏移地址,在所述动态散列表之后还包括数据存储区,存放键值对大小、键值对数据和键值对校验和;数据一致性保障模块:使用结合键值对校验和的检查点的机制,维护持久键值存储系统的数据一致性。7.根据权利要求6所述的使用非易失性内存介质的键值对持久存储系统,其特征在于,所述静态散列表大小固定,每一个散列表中含有2^16个桶,每个桶中含有四个存储单元,每个存储单元中含有64位的键的散列值、键值对在非易失性内存存储区中64位的内存偏移地址和32位的键值对校验和。2CN107728937A权利要求书2/2页8.根据权利要求7所述的使用非易失性内存介质的键值对持久存储系统,其特征在于,所述静态散列表中的散列算法采用两个散列函数的布谷鸟散列算法,当静态散列表的基本填满时,对该静态散列表进行固定操作,固定后的静态散列表将通过合并线程和位于非易失性内存中动态散列表进行合并,完成动态扩展。9.根据权利要求8所述