[发明专利]数据冗余处理方法、装置和分布式存储系统在审
申请号: | 201310499656.8 | 申请日: | 2013-10-22 |
公开(公告)号: | CN103559102A | 公开(公告)日: | 2014-02-05 |
发明(设计)人: | 王雷;吴兴博;龙翔 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F3/06 |
代理公司: | 北京永创新实专利事务所 11121 | 代理人: | 祗志洁 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 冗余 处理 方法 装置 分布式 存储系统 | ||
技术领域:
本发明涉及存储技术,尤其涉及一种数据冗余处理方法、装置和分布式存储系统。
背景技术:
分布式存储系统包括通过网络互联的多个存储节点,数据可以被分散地存储到不同的存储节点上,以实现大容量、高可靠性且易扩展的存储应用。
现有的分布式存储系统可以采用基于对象的存储方式。对于这种存储方式来说,现有技术采用存储节点间的多份机制以保证数据存储的可靠性。具体来说,该多份机制即为将该分布式存储系统中的某一个或者某几个存储节点作为主存储节点的备份节点。在写数据时,需要将数据在这些存储节点上写入多份相同的数据,从而实现数据的冗余备份,在一个存储节点发生故障时,其它存储节点上的数据是可用的。
但是,上述现有的多份机制只是筒单地向多个存储节点中写入相同的数据,如果要保证损坏N个存储节点后数据仍可用,则数据至少需要重复写N+1份,则存储节点的空间利用率最多为1/(N+1),因此,存储空间的利用率较低,存储节点的负载增高;而且,这种多份机制不能支持多种类型的冗余备份方式,灵活性较低。
发明内容:
本发明针对现有多份机制所需的存储空间利用率低且不支持多种类型的冗余备份方式的缺点,提供了一种数据冗余处理方法、装置和分布式存储系统。
本发明提供的一种数据冗余处理方法,具体是:首先,将写入数据以固定长度L进行切分,得到K个片段数据,当最后一个片段的长度小于L时,以二进制值00000000进行填充,L为4N个字节,K为不小于1的自然数,N为正整数;然后,将每个片段数据等分成4个数据块,由4个数据块计算出4个冗余数据块;最后,对每个片段数据,将对应的4个数据块和4个冗余数据块存储到至少4个存储节点上,每个存储节点包含每个片段数据的至多2个数据块。所述的4个冗余数据块通过对4个数据块进行逻辑异或操作(XOR)计算得到。
本发明提供的一种数据冗余处理装置,包括:数据分段模块、冗余数据生成模块以及存储模块。数据分段模块用于将写入数据以固定长度L进行切分,设共得到K个片段数据,当最后一个片段的长度小于L时,以二进制值00000000进行填充,L为4N个字节,K为不小于1的自然数,N为正整数。冗余数据生成模块,将每个片段数据等分成4个数据块,并由4个数据块计算出4个冗余数据块。所述的4个冗余数据块通过对4个数据块进行逻辑异或操作计算得到。存储模块将每个片段数据所对应的4个数据块和4个冗余数据块存储到至少4个存储节点上,每个存储节点包含每个片段数据的至多2个数据块。
本发明还提供了一种分布式存储系统,使用所述的数据冗余处理方法和装置,该系统中最少包含4个存储节点,每个存储节点包含每个片段数据的至多2个数据块。
所述的片段的长度L为固定值,且对于同一个系统中的数据,片段长度是唯一的。
本发明的数据冗余处理方法、装置和分布式存储系统,提高了存储空间的利用率,降低了存储节点的负载,且支持多种类型的冗余备份方式,灵活性较高。对于大容量数据,本发明的分块存储可以提高数据的访问速度,例如在进行数据迁移和校验时,对散布在不同节点的数据可以进行并行的操作,相比对一个大文件的线性处理,节省时间。本发明的备份方式按照实际占用的容量,需要两倍于原数据的存储容量,并且通过逻辑异或操作产生的存储块,可在分块不完整的情况下恢复丢失的数据。而典型的分布式数据存储系统(如Apache的HDFS)中不使用数据恢复编码,而是直接使用三个一致的副本和简单的检错码。相比之下,本发明的数据冗余处理方法、装置和分布式存储系统占用更少的存储空间。
附图说明:
图1为本发明的数据冗余处理装置的结构示意图;
图2为本发明的数据冗余处理方法中对数据处理的示意图。
具体实施方式:
下面将结合附图和实施例对本发明的技术方案进行详细说明。
如图1所示,本发明提供了一种数据冗余处理装置,包括数据分段模块1、冗余数据生成模块2以及存储模块3。
所述的数据分段模块1将写入数据切分为等长的K个片段数据,K为不小于1的自然数,每个片段的长度为L。最后的第K个片段有可能小于所设定的长度L,则使用二进制值00000000来进行填充,使第K个片段的长度为L。片段的长度L在具体实施时采用固定值,对于一个系统中的数据,片段长度L是唯一的。设置片段长度L为4N个字节,N为正整数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310499656.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置