CN102968356A - 云存储系统的数据处理方法 - Google Patents

云存储系统的数据处理方法 Download PDF

Info

Publication number
CN102968356A
CN102968356A CN2011104569412A CN201110456941A CN102968356A CN 102968356 A CN102968356 A CN 102968356A CN 2011104569412 A CN2011104569412 A CN 2011104569412A CN 201110456941 A CN201110456941 A CN 201110456941A CN 102968356 A CN102968356 A CN 102968356A
Authority
CN
China
Prior art keywords
data
frame
error correction
data block
storage system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011104569412A
Other languages
English (en)
Inventor
刘涛
阮昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Institute of Optics and Fine Mechanics of CAS
Original Assignee
Shanghai Institute of Optics and Fine Mechanics of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Institute of Optics and Fine Mechanics of CAS filed Critical Shanghai Institute of Optics and Fine Mechanics of CAS
Priority to CN2011104569412A priority Critical patent/CN102968356A/zh
Publication of CN102968356A publication Critical patent/CN102968356A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一种云存储系统的数据处理方法,对云存储系统的数据存入和数据提取分别采用里的所罗门编码数据纠错编码处理和里的所罗门纠错解码处理。本发明提高云存储系统中数据的安全性,可恢复性,降低数据备份数目,可节约数据的存储空间,降低成本。

Description

云存储系统的数据处理方法
技术领域
本发明涉及云存储系统,特点是一种基于里的所罗门的云存储系统的数据处理方法。
背景技术
在当今风起云涌的时代,云存储作为云的基础架构和最广泛的应用得到了极大的重视。在云存储系统中,用户数据存放于系统的云端,而构成云端的存储节点是用户不可控的。用户的数据可能被未经授权的第三方挖掘比对或者恶意篡改。
同时,在云端单个或者多个存储节点缺失、失效的情况下(随着云端的扩展,存储节点故障的几率将增加),用户数据丢失的可能性极大。上述情况表明,云存储的发展亟需一种能完全保证用户数据完整性、隐私性和可靠性的安全机制。
目前基于所有的云存储技术都是采用一种类似Hadoop(云计算的一种开源软件)系统中的HDFS(Hadoop Distributed File System,即Hadoop分布式文件系统)。该技术主要是将一个数据文件按照设定的大小分成若干块,再通过对每一个数据完整备份(例如Hadoop中的HDFS设置有3份相同备份)来提高可靠性,该技术的缺点是浪费存储空间。
里的所罗门纠错编码方法:其原理是,计算信息码符多项式除以校验码生成多项式之后的余数,具体公式是:
F mod D=C;
其中F为原始数据,D是生成多项式,C为生成的冗余纠错数据。mod为求余运算。
而在解码时,为简单起见,假定存入原始的信息符号为m3、m2、m1、m0和由此产生的检验符号Q1、Q0,而读出的符号为m3′、m2′、m1′、m0′、Q1′和Q0′,如果计算由此得到的校正子s0和s1不全为0,则说明有差错,再通过计算错误多项式以及错误值,将错误纠正过来。
该方法广泛应用于DVD光盘数据的处理,该编码方法能很好的提高对原始数据的纠错能力,能将数据的随机错误率从2×10-2降低到1×10-15。在本发明中我们将该编码方法将一个数组形式的数据块,在横向和纵向分别进行里的所罗门编码,获得横向和纵向纠错冗余数据,这样就对数据进行了双重的纠错保护,提高了纠错能力,而且这些冗余数据只占原来数据量的13%。
正是由于在较低的数据冗余的情况下能如此高效的进行数据纠错,而一般的云存储系统均未采取此种纠错方法,只是通过数据备份来达到数据恢复的能力,一般云存储系统均须备份3份及以上,显然将极大地浪费数据的存储空间,提高成本,
发明内容
本发明要解决的技术问题在于,提供了一种云存储系统的数据处理方法,该方法将提高云存储系统中数据的安全性,可恢复性,降低数据备份数目,极大的节约数据的存储空间,降低成本。
本发明的技术解决方案如下:
一种云存储系统的数据处理方法,其特点在于,对云存储系统的数据存入和数据提取分别采用里的所罗门编码数据纠错编码处理和里的所罗门纠错解码处理。
所述的数据存入方法,包括以下具体步骤:
①将待存储的原始数据分成K个帧数据,每个帧数据包含相同的固定长度N比特的数据,当最后一个原始数据帧的数据长度小于N时,对最后一块数据帧填充数据‘0’,以达到长度N,其中K为大于大于1的正整数,N的取值范围为:200<N<2000:
②对所述的每一个数据帧加上编号,即ID,得到一个新数据帧,所述的ID长为4个字节,从0001开始递加,故新的数据帧的长度为(N+4);
③将所述的新的K个数据帧再组合为W个数据块,每一个数据块包含M个数据帧,形成一个M*(N+4)的数据矩阵,当最后一个数据块的数据帧的个数小于M时,对该数据块填充‘0’数据帧,以使最后一个数据块达到固定的数据帧M,其中M,W的取值范围分别为:200<M<2000,W=K/M;
④对所述的数据块采用里的所罗门乘积码纠错编码方法进行纠错编码:将第i个数据块的行和列分别添加P0,PI个纠错的冗余数据进行编码,转化成一个包含(M+P0)*(N+4+PI)个数据的里的所罗门数据块,其中,P0,PI分别为数据块中一行和一列增加的用于纠错的冗余数据个数,且0<P0<M/2,0<PI<M/2,1<i≤M;
⑤将所述的每一个里的所罗门数据块按列分解成M+P0个数据片,将同一个数据块的M+P0个数据片的数据分别存储到云存储系统的多个存储器上,且同一存储器中,同一个数据块的片数≤PI/2片;
所述的数据提取方法,包括下列步骤:
①读取出属于同一数据块的数据片,如果第i片中出现P0/2个数据读取错误,根据里的所罗门乘积码的纠错解码算法,对该第i片的数据纠错,恢复出原始数据;
②读取完同一数据块的所有的数据片,如果在读取该数据块时有少于PI/2片出现丢失或者无法读取,计算机按里的所罗门乘积码的解码算法,对该少于PI/2片数据纠错,恢复出原始数据;
③重复步骤①、②,读取并处理完属于同一个原始数据的所有数据块,去掉纠错冗余数据,将所有数据块的新数据帧按原编号ID顺序排列,再去掉编号,得到原始存储的数据。
本发明的技术效果:
1、本发明的最显著效果为,对原始数据块的行和列均进行了里的所罗门纠错编码,达到了双重纠错的能力,并且将这些经纠错后的数据块重新分片存储到云系统中的不同存储器上,这样不仅能对各个存储器上的片数据能进行纠错,并且当云系统中有一定数目的存储器出现故障造成一些片数据不能读取时,依然可得到完全的恢复,这极大的提高了系统的可靠性。
2、一般的云存储系统需要将原始数据复制多份来确保数据的安全(一般云存储系统均须备份3份及以上),本发明可以减少在确保存储数据安全时使用的冗余存储量(可以只需备份两份或者一份),这将极大的节约的数据的存储空间,降低成本,使云存储系统空间得到更加充分的利用。
3、本发明的另一显著特点是,由于数据是被分散存储在多个存储器上的,所以当外部有人非法入侵云系统中某单一存储器时,所获得的数据都是不完整的,也就提高了在面对系统外部的非法入侵时,数据的安全性。
具体实施方式
下面结合实例对本发明做进一步说明,但不应以此限制本发明的保护范围。
本实例用于对一个100MB的原始数据进行云存储,具体实施步骤如下
步骤一,将一个100MB的原始待存储的数据分成102401帧数据,每一帧数据为固定长度1020个比特的数据。
所述将待存储数据分为固定长度1020的102401帧数据,最后一块原始数据帧长度小于255时,对最后一块数据帧填充数据‘0’,以达到长度1020。
步骤二,对所述的每一个数据帧加上编号,即ID,得到新的数据帧。
所述将每一帧数据加上ID,ID长为4个字节,从1开始递加,实例中ID号从1到102401。
步骤三,将所述的数据帧再组合为若干个数据块,每一个数据块包含1024个数据帧,共得到100个这样的数据块。
所述将数据帧再组合为数据块,这些数据帧将组成一个1024*1024的数据矩阵,形成一个数据块,如果最后一个数据块数据帧个数少于1024,对最后一块数据块填充数据‘0’,以达到固定数据块数1024。
步骤四,通过里的所罗门纠错编码,将第i个包含1024*1024个数据的数据块的行和列分别进行编码,转化成一个包含(1024+PO)*(1024+PI)个数据的数据块,其中0<i<=M。PO=PI=100为数据块中一行和一列增加的用于纠错的冗余数据个数。具体公式是:
F mod D=C;
本实施例中F为1024位数据,D是生成多项式,C为生成的100个冗余纠错数据。mod为求余运算。
步骤五,将上述得到的每一个数据块按列分解成1024+100片,将同一个数据块得到的若干片数据分别存储到若干个云存储系统的存储器上,且同一存储器上中同一个数据块的片数不能多于50块。
步骤六,实例中当从云存储系统中读取数据时,通过RS-PC中的解码算法,解码出需要提取的数据。
所述从云存储系统中读取出数据,是指:
1)读取出属于同一数据块的不同片,第i片中出现少于50个数据读取错误,根据里的所罗门纠错解码算法,可以将整片数据纠错,恢复成原始数据;
2)读取完同一数据块的不同片,如果在读取这些片时有少于50片出现丢失或者无法读取,根据里的所罗门纠错解码算法,可以将该段数据纠错,恢复出来。
3)读取完所有属于同一个原始数据的不同数据块,去掉纠错冗余数据,将这些数据块按编号(1到102401)顺序排列,再去掉编号,最终得到原始存储的数据。

Claims (3)

1.一种云存储系统的数据处理方法,其特征在于,对云存储系统的数据存入和数据提取分别采用里的所罗门编码数据纠错编码处理和里的所罗门纠错解码处理。
2.根据权利要求1所述的云存储系统的数据处理方法,其特征在于所述的数据存入方法,包括以下具体步骤:
①将待存储的原始数据分成K个帧数据,每个帧数据包含相同的固定长度N比特的数据,当最后一个原始数据帧的数据长度小于N时,对最后一块数据帧填充数据‘0’,以达到长度N,其中K为大于大于1的正整数,N的取值范围为:200<N<2000:
②对所述的每一个数据帧加上编号,即ID,得到一个新数据帧,所述的ID长为4个字节,从0001开始递加,故新的数据帧的长度为(N+4);
③将所述的新的K个数据帧再组合为W个数据块,每一个数据块包含M个数据帧,形成一个M*(N+4)的数据矩阵,当最后一个数据块的数据帧的个数小于M时,对该数据块填充‘0’数据帧,以使最后一个数据块达到固定的数据帧M,其中M,W的取值范围分别为:200<M<2000,W=K/M;
④对所述的数据块采用里的所罗门乘积码纠错编码方法进行纠错编码:将第i个数据块的行和列分别添加P0,PI个纠错的冗余数据进行编码,转化成一个包含(M+P0)*(N+4+PI)个数据的里的所罗门数据块,其中,P0,PI分别为数据块中一行和一列增加的用于纠错的冗余数据个数,且0<P0<M/2,0<PI<M/2),1<i≤M;
⑤将所述的每一个里的所罗门数据块按列分解成M+P0个数据片,将同一个数据块的M+P0个数据片的数据分别存储到云存储系统的多个存储器上,且同一存储器中,同一个数据块的片数≤PI/2片;
3.根据权利要求1所述云存储系统的数据处理方法,其特征是,所述的数据提取方法,包括下列步骤:
①读取出属于同一数据块的数据片,如果第i片中出现P0/2个数据读取错误,根据里的所罗门乘积码的纠错解码算法,对该第i片的数据纠错,恢复出原始数据;
②读取完同一数据块的所有的数据片,如果在读取该数据块时有少于PI/2片出现丢失或者无法读取,计算机按里的所罗门乘积码的解码算法,对该少于PI/2片数据纠错,恢复出原始数据;
③重复步骤①、②,读取并处理完属于同一个原始数据的所有数据块,去掉纠错冗余数据,将所有数据块的新数据帧按原编号ID顺序排列,再去掉编号,得到原始存储的数据。
CN2011104569412A 2011-12-30 2011-12-30 云存储系统的数据处理方法 Pending CN102968356A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011104569412A CN102968356A (zh) 2011-12-30 2011-12-30 云存储系统的数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104569412A CN102968356A (zh) 2011-12-30 2011-12-30 云存储系统的数据处理方法

Publications (1)

Publication Number Publication Date
CN102968356A true CN102968356A (zh) 2013-03-13

Family

ID=47798509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104569412A Pending CN102968356A (zh) 2011-12-30 2011-12-30 云存储系统的数据处理方法

Country Status (1)

Country Link
CN (1) CN102968356A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104579571A (zh) * 2015-01-15 2015-04-29 山东超越数控电子有限公司 一种基于ldpc编码的数据存储方法
CN108880620A (zh) * 2018-08-20 2018-11-23 广东石油化工学院 电力线通信信号重构方法
CN110061802A (zh) * 2018-01-17 2019-07-26 中兴通讯股份有限公司 多用户数据传输控制方法、装置及数据传输设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005069775A2 (en) * 2004-01-15 2005-08-04 Sandbridge Technologies, Inc. A method of reed-solomon encoding and decoding
CN101840377A (zh) * 2010-05-13 2010-09-22 上海交通大学 基于rs纠删码的数据存储方法
CN102006088A (zh) * 2010-10-08 2011-04-06 清华大学 一种用于降低体全息存储系统误码率的交织及纠错方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005069775A2 (en) * 2004-01-15 2005-08-04 Sandbridge Technologies, Inc. A method of reed-solomon encoding and decoding
CN101840377A (zh) * 2010-05-13 2010-09-22 上海交通大学 基于rs纠删码的数据存储方法
CN102006088A (zh) * 2010-10-08 2011-04-06 清华大学 一种用于降低体全息存储系统误码率的交织及纠错方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘小成等: "图像交织RS码设计及其C语言实现", 《微计算机信息》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104579571A (zh) * 2015-01-15 2015-04-29 山东超越数控电子有限公司 一种基于ldpc编码的数据存储方法
CN110061802A (zh) * 2018-01-17 2019-07-26 中兴通讯股份有限公司 多用户数据传输控制方法、装置及数据传输设备
CN108880620A (zh) * 2018-08-20 2018-11-23 广东石油化工学院 电力线通信信号重构方法
CN108880620B (zh) * 2018-08-20 2021-06-11 广东石油化工学院 电力线通信信号重构方法

Similar Documents

Publication Publication Date Title
US9600365B2 (en) Local erasure codes for data storage
CN105260259B (zh) 一种基于系统最小存储再生码的局部性修复编码方法
Sima et al. Optimal codes for the q-ary deletion channel
CN100539444C (zh) 用于将附加纠错层嵌入到纠错码中的方法和设备
Mitzenmacher et al. Biff (Bloom filter) codes: Fast error correction for large data sets
CN105356968B (zh) 基于循环置换矩阵的网络编码的方法及系统
CN108347306B (zh) 分布式存储系统中类局部重构码编码及节点故障修复方法
CN110895497B (zh) 一种分布式存储中降低纠删码修复的方法及装置
CN107844272A (zh) 一种提高纠错能力的交叉分组编译码方法
CN101840366A (zh) 环链式n+1位奇偶校验码的存储方法
CN112000512B (zh) 一种数据修复方法及相关装置
CN110532126A (zh) 纠删码存储系统数据快速恢复方法、装置及存储介质
CN116501553A (zh) 数据恢复方法、装置、系统、电子设备及存储介质
CN103703446B (zh) 网络存储中抗拜占庭失效的数据重构、失效数据恢复方法及装置
CN105356892B (zh) 网络编码的方法及系统
CN115793984B (zh) 一种数据存储方法、装置、计算机设备及存储介质
CN117271199A (zh) 码生成、编码及解码方法及其装置
CN112181707B (zh) 分布式存储数据恢复调度方法、系统、设备及存储介质
CN102968356A (zh) 云存储系统的数据处理方法
WO2017041232A1 (zh) 一种二进制循环码的编解码框架
CN115269258A (zh) 一种数据恢复的方法和系统
Huang et al. An improved decoding algorithm for generalized RDP codes
CN108614749A (zh) 一种数据处理方法及装置
CN105245314B (zh) 分布式存储系统中的混合冗余容错编解码方法及系统
CN117194095B (zh) 改变纠错配置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C05 Deemed withdrawal (patent law before 1993)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130313