[发明专利]提高RAID读取性能的系统及方法有效
申请号: | 201510997123.1 | 申请日: | 2015-12-28 |
公开(公告)号: | CN106919340B | 公开(公告)日: | 2020-03-17 |
发明(设计)人: | 庄雅钧 | 申请(专利权)人: | 南宁富桂精密工业有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 深圳市赛恩倍吉知识产权代理有限公司 44334 | 代理人: | 饶智彬 |
地址: | 530007 广西壮族自治区南宁市高*** | 国省代码: | 广西;45 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 提高 raid 读取 性能 系统 方法 | ||
1.一种提高RAID读取性能的系统,用于电子装置中,该电子装置与m个磁盘相连接,所述m个磁盘中有n个用于校验的磁盘,其特征在于,该系统包括:
读取计算模块,用于当要读取文件时,通过预设的读取算法根据本次要读取的m个有效数据块的第一个数据块在所有有效数据块中的编号、所有磁盘数m以及校验磁盘数n确定本次m个磁盘所分别要读取的有效数据块,其中,所述预设的读取算法是根据公式Addrx=(B+x-1)/(m-n)+(B+x-1)%(m-n)确定每个磁盘所要读取的有效数据块的编号,B为本次要被读取的m-n个有效数据块中的第一个有效数据块在所有有效数据块中的编号,m为所有磁盘数,n为用于校验的磁盘数,x为本次计算的磁盘的编号;
读取模块,用于向各个磁盘发送读取相应的有效数据块的命令,并将各个磁盘所读取的有效数据块按照一定顺序拼接起来,及判断所述文件是否被完全读取,并在所述文件被完全读取时,结束读取操作。
2.如权利要求1所述的提高RAID读取性能的系统,其特征在于,所述读取计算模块在通过预设的读取算法确定本次m个磁盘所分别要读取的有效数据块之前,还判断所述要被读取的文件的未被读取的有效数据块的个数是否小于m,并当所述要被读取的文件的未被读取的有效数据块的个数小于m时,分配若干个数据块给未被分到读取有效数据块的磁盘进行读取。
3.如权利要求1至2任一项所述的提高RAID读取性能的系统,其特征在于,当已经拼接的有效数据块的长度不小于所要被读取的文件的长度时,所述读取模块判断所述文件被完全读取,并且从已经拼接的有效数据块的末尾删除部分数据,使得已经拼接的有效数据块的长度与所要读取的文件的长度相同。
4.如权利要求1所述的提高RAID读取性能的系统,其特征在于,该系统还包括:
分割模块,用于当要存储文件时,获取该文件并将该文件分割成若干个预设大小的有效数据块;
第一获取模块,用于从分割出的所有未被存储的有效数据块中按照一定顺序获取m-n个有效数据块;
写入计算模块,用于根据获取的m-n个有效数据块计算出n个校验数据块,并通过预设的写入算法根据本次所要写入的m-n个有效数据块的第一个有效数据块在所有有效数据块中的编号、所有磁盘数m以及校验磁盘数n确定各个有效数据块和校验数据块所分别对应的磁盘;
写入模块,用于将各个有效数据块以及校验数据块分别发送到相应的磁盘进行存储操作,及判断所述文件是否被完全存储,并在所述文件被完全存储时,结束存储操作。
5.如权利要求4所述的提高RAID读取性能的系统,其特征在于,当要被存储的文件的未被存储的有效数据块的个数小于m-n时,所述第一获取模块补充若干个指定格式的数据块充当有效数据块,使得获取的有效数据块的个数为m-n。
6.如权利要求4所述的提高RAID读取性能的系统,其特征在于,所述预设的写入算法是将m-n个有效数据块以及n个校验数据块按照B1,B2,...,Bm-n,P1,P2,...,Pn的形式进行排序,并将这m个数据块依次分配各m个磁盘,所述Bm-n为本次m-n个有效数据块中的第m-n个有效数据块,所述Pn为本次n个校验数据块中第n个校验数据块,然后根据公式L=((B/(m-n)*n)%(m*n)计算出本次m个数据块与m个磁盘的对应关系所要向左偏转的位数L,所述B为本次要被存储的m-n个有效数据块中的第一个有效数据块在所有有效数据块中的编号,所述m为所有磁盘数,所述n为用于校验的磁盘数,然后根据所要偏转的位数L重新确定各个数据块与磁盘的对应关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南宁富桂精密工业有限公司,未经南宁富桂精密工业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510997123.1/1.html,转载请声明来源钻瓜专利网。