基于NVRAM存储系统直接纠删码的优化方法和系统技术方案

技术编号:14693655 阅读:107 留言:0更新日期:2017-02-23 16:35
本发明专利技术公开了基于NVRAM存储系统直接纠删码的优化方法和系统,所述方法针对Write队列中的操作,先判断该操作是否是纠删码条带对齐的操作;如果是纠删码条带对齐的操作,则将该操作生成相应的事务并提交,继续判断提交纠删码对齐的事务;如果该操作不是纠删码条带对齐的操作,则该操作将不会提交,等到之前的所有操作处理完成后;再读取源数据补齐为纠删码条带对齐的操作再提交。本发明专利技术由原来的串行化处理操作优化成并行提交多个纠删条带对齐的操作;优化方法既能够保证客户端操作的顺序性,又能够提高写入效率,可以避免由于串行化提交导致存储系统后端IO压力不够,从而发挥海量存储系统的处理读写IO的能力。

【技术实现步骤摘要】

本专利技术涉及数据存储
,具体涉及一种基于NVRAM的海量存储系统直接纠删码的优化方法和系统。
技术介绍
在计算机技术高速发展的今天,数据呈现爆炸式增长;海量存储系统的数据存储的速度越来越倍受关注。在海量存储系统NVRAM直接纠删码中一般情况下Write队列中的操作是串行化提交的;Write队列中的操作根据FIFO的原则,一次提交一个操作,并等到这个操作处理完成后再继续处理Write队列中的下一个操作;由于提交的串行化使得海量存储系统的后端的压力不够,不能充分发挥硬件的性能。按照误码控制的不同功能,可分为检错码、纠错码和纠删码等。检错码仅具备识别错码功能而无纠正错码功能;纠错码不仅具备识别错码功能,同时具备纠正错码功能;纠删码则不仅具备识别错码和纠正错码的功能,而且当错码超过纠正范围时可把无法纠错的信息删除。
技术实现思路
本专利技术要解决的技术问题是:本专利技术针对以上问题,提供一种基于NVRAM存储系统直接纠删码的优化方法。本专利技术所采用的技术方案为:基于NVRAM存储系统直接纠删码的优化方法,所述方法针对Write队列中的操作,先判断该操作是否是纠删码条带对齐的操作;如果是纠删码条带对齐的操作,则将该操作生成相应的事务并提交,继续判断提交纠删码对齐的事务;如果该操作不是纠删码条带对齐的操作,则该操作将不会提交,等到之前的所有操作处理完成后;再读取源数据补齐为纠删码条带对齐的操作再提交。该方法主要优化待处理Write队列中的操作提交方式;不再单纯的将Write队列中的操作进行串行化提交,而是根据Write队列中的操作是否为纠删条带对齐的操作进行并行化提交;这样可以避免由于串行化提交导致存储系统后端IO压力不够,从而发挥海量存储系统的处理IO的能力,充分发挥硬件的性能。所述方法通过三个部分:预处理模块、判断模块、提交模块实现,其中:预处理模块:当海量存储系统的服务器端收到客户端发送的操作,预处理模块首先对这些操作进行预处理,判断这些操作的参数是否正确,以及计算操作影响数据的范围等;如果不满足条件,则直接返回给客户端,否则直接压入操作队列;判断模块:预处理模块完成之后流程进入判断模块,在判断模块中对客户端发送的请求操作进行判断处理,根据操作对数据的影响范围来判断该操作是否为纠删码条带对齐的操作,非对齐的操作需要读取源数据补充成对齐的操作;提交模块:循环处理Write队列中的操作,如果为纠删码条带对齐的操作,则将该操作内存中的数据生成相应的事务,提交给海量存储系统后端,并继续处理Write队列中的后续的操作;如果是非纠删码条带对齐的操作,则该操作需要等待之前的所有操作落盘成功后,再读取源数据补齐为对齐的操作并提交,直到Write队列中的操作提交完成。所述方法主要在软件层面实现,具体流程如下:1)客户端发送操作请求;2)预处理模块判断客户端的操作是否合法;3)判断模块根据这些操作影响的数据的范围信息判断是否为纠删码条带对齐的操作;4)提交模块,根据判断模块的结果循环处理Write队列中的操作,如果为纠删码条带对齐的操作则生成相应的事务并提交,再继续处理后续的操作;如果为非纠删码条带对齐的操作,则等待该操作之前的所有操作落盘成功后,再读取源数据补齐为纠删码条带对齐的操作继续提交,直到Write队列中所有的操作提交完成。基于NVRAM存储系统直接纠删码的优化系统,所述系统包括三个部分:预处理模块、判断模块、提交模块,其中:预处理模块:当NVRAM海量存储系统的服务器端收到客户端发送的操作,预处理模块首先对这些操作进行预处理,判断这些操作的参数是否正确,以及计算操作影响数据的范围;如果不满足条件,则直接返回给客户端,否则直接压入操作队列;判断模块:预处理模块完成之后流程进入判断模块,在判断模块中对客户端发送的请求操作进行判断处理,根据操作对数据的影响范围来判断该操作是否为纠删码条带对齐的操作,非对齐的操作需要读取源数据补充成对齐的操作;提交模块:循环处理Write队列中的操作,如果为纠删码条带对齐的操作,则将该操作内存中的数据生成相应的事务,提交给海量存储系统后端,并继续处理Write队列中的后续的操作;如果是非纠删码条带对齐的操作,则该操作需要等待之前的所有操作落盘成功后,再读取源数据补齐为对齐的操作并提交,直到Write队列中的操作提交完成。本专利技术的有益效果为:本专利技术由原来的串行化处理操作优化成并行提交多个纠删条带对齐的操作;优化方法既能够保证客户端操作的顺序性,又能够提高写入效率,可以避免由于串行化提交导致存储系统后端IO压力不够,从而发挥海量存储系统的处理读写IO的能力。附图说明图1为本专利技术方法流程图。具体实施方式下面根据说明书附图,结合具体实施方式对本专利技术进一步说明:实施例1基于NVRAM存储系统直接纠删码的优化方法,所述方法针对Write队列中的操作,先判断该操作是否是纠删码条带对齐的操作;如果是纠删码条带对齐的操作,则将该操作生成相应的事务并提交,继续判断提交纠删码对齐的事务;如果该操作不是纠删码条带对齐的操作,则该操作将不会提交,等到之前的所有操作处理完成后;再读取源数据补齐为纠删码条带对齐的操作再提交。该方法主要优化待处理Write队列中的操作提交方式;不再单纯的将Write队列中的操作进行串行化提交,而是根据Write队列中的操作是否为纠删条带对齐的操作进行并行化提交;这样可以避免由于串行化提交导致存储系统后端IO压力不够,从而发挥海量存储系统的处理IO的能力,充分发挥硬件的性能。实施例2在实施例1的基础上,本实施例所述方法通过三个部分:预处理模块、判断模块、提交模块实现,其中:预处理模块:当海量存储系统的服务器端收到客户端发送的操作,预处理模块首先对这些操作进行预处理,判断这些操作的参数是否正确,以及计算操作影响数据的范围等;如果不满足条件,则直接返回给客户端,否则直接压入操作队列;判断模块:预处理模块完成之后流程进入判断模块,在判断模块中对客户端发送的请求操作进行判断处理,根据操作对数据的影响范围来判断该操作是否为纠删码条带对齐的操作,非对齐的操作需要读取源数据补充成对齐的操作;提交模块:循环处理Write队列中的操作,如果为纠删码条带对齐的操作,则将该操作内存中的数据生成相应的事务,提交给海量存储系统后端,并继续处理Write队列中的后续的操作;如果是非纠删码条带对齐的操作,则该操作需要等待之前的所有操作落盘成功后,再读取源数据补齐为对齐的操作并提交,直到Write队列中的操作提交完成。实施例3如图1所示,在实施例2的基础上,本实施例所述方法主要在软件层面实现,具体流程如下:1)客户端发送操作请求;2)预处理模块判断客户端的操作是否合法;3)判断模块根据这些操作影响的数据的范围信息判断是否为纠删码条带对齐的操作;4)提交模块,根据判断模块的结果循环处理Write队列中的操作,如果为纠删码条带对齐的操作则生成相应的事务并提交,再继续处理后续的操作;如果为非纠删码条带对齐的操作,则等待该操作之前的所有操作落盘成功后,再读取源数据补齐为纠删码条带对齐的操作继续提交,直到Write队列中所有的操作提交完成。实施例4基于NVRAM存储系统直接纠删码的优化系统,所述系统包括三个部分:预处理模块本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201611109316.html" title="基于NVRAM存储系统直接纠删码的优化方法和系统原文来自X技术">基于NVRAM存储系统直接纠删码的优化方法和系统</a>

【技术保护点】
基于NVRAM存储系统直接纠删码的优化方法,其特征在于,所述方法针对Write队列中的操作,先判断该操作是否是纠删码条带对齐的操作;如果是纠删码条带对齐的操作,则将该操作生成相应的事务并提交,继续判断提交纠删码对齐的事务;如果该操作不是纠删码条带对齐的操作,则该操作将不会提交,等到之前的所有操作处理完成后;再读取源数据补齐为纠删码条带对齐的操作再提交。

【技术特征摘要】
1.基于NVRAM存储系统直接纠删码的优化方法,其特征在于,所述方法针对Write队列中的操作,先判断该操作是否是纠删码条带对齐的操作;如果是纠删码条带对齐的操作,则将该操作生成相应的事务并提交,继续判断提交纠删码对齐的事务;如果该操作不是纠删码条带对齐的操作,则该操作将不会提交,等到之前的所有操作处理完成后;再读取源数据补齐为纠删码条带对齐的操作再提交。2.根据权利要求1所述的基于NVRAM存储系统直接纠删码的优化方法,其特征在于,所述方法通过三个部分:预处理模块、判断模块、提交模块实现,其中:预处理模块:当NVRAM海量存储系统的服务器端收到客户端发送的操作,预处理模块首先对这些操作进行预处理,判断这些操作的参数是否正确,以及计算操作影响数据的范围;如果不满足条件,则直接返回给客户端,否则直接压入操作队列;判断模块:预处理模块完成之后流程进入判断模块,在判断模块中对客户端发送的请求操作进行判断处理,根据操作对数据的影响范围来判断该操作是否为纠删码条带对齐的操作,非对齐的操作需要读取源数据补充成对齐的操作;提交模块:循环处理Write队列中的操作,如果为纠删码条带对齐的操作,则将该操作内存中的数据生成相应的事务,提交给海量存储系统后端,并继续处理Write队列中的后续的操作;如果是非纠删码条带对齐的操作,则该操作需要等待之前的所有操作落盘成功后,再读取源数据补齐为对齐的操作并提交,直到Write队列中的操作提交完成。3.根据权利要求2所述的基于NVRAM存储系统直接纠删码的优化方法,其特征在于,所述方...

【专利技术属性】
技术研发人员:方兰春
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南;41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1