CN111679939B - 数据备份方法及系统 - Google Patents
数据备份方法及系统 Download PDFInfo
- Publication number
- CN111679939B CN111679939B CN202010548475.XA CN202010548475A CN111679939B CN 111679939 B CN111679939 B CN 111679939B CN 202010548475 A CN202010548475 A CN 202010548475A CN 111679939 B CN111679939 B CN 111679939B
- Authority
- CN
- China
- Prior art keywords
- data
- erasure code
- data blocks
- backed
- matrix
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 239000011159 matrix material Substances 0.000 claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 46
- 238000013500 data storage Methods 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims 2
- 238000011084 recovery Methods 0.000 abstract description 14
- 238000004891 communication Methods 0.000 description 7
- 206010033799 Paralysis Diseases 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据容灾和云储存领域,提供一种数据备份方法及系统,该方法包括:对待备份数据依次执行多次纠删码编码处理,并根据执行纠删码编码处理的次数生成相应级数的多个数据块;将多个数据块分别存储在不同的存储节点内;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。该方法及系统通过对待备份数据依次执行多次纠删码编码处理,可以降低了存储节点的存储资源开支;以及,将多个数据块分开在不同的存储节点内进行存储,以降低单一存储节点所需的存储空间开支,提升数据存储的容灾安全性和保密安全性。
Description
技术领域
本发明涉及数据容灾和云储存技术,尤其涉及一种数据备份方法及系统。
背景技术
随着信息系统的广泛应用,信息系统的数据灾难备份和恢复变得尤为重要。信息系统的数据灾难指的是由于人为或自然的原因,导致信息系统严重故障或瘫痪,该信息系统支持的业务功能停顿或服务水平不可接受。数据灾难恢复指的是将信息系统从数据灾难造成的故障或瘫痪状态恢复到可正常运行的状态,其中针对灾难恢复,首要的任务就是恢复数据。
目前常见的数据灾难备份系统主要是采用了异地多数据中心镜像备份的方式,将需要备份的数据的镜像副本完全存储在异地的一个或多个数据中心内,当需要恢复数据时,待恢复数据的节点向上述一个或多个数据中心请求其所备份的数据的完整镜像。该镜像备份方式具有如下的缺点:1、由于是完整传输镜像数据,在数据同步阶段会占用大量的传输带宽,并且相应的数据备份中心需要提供足够的存储资源,这导致数据备份中心的创建、运行、维护成本较高;2、数据的安全性与每一数据备份中心的安全性相关度较高,尤其是所备份的数据为敏感数据时,不仅需要保证数据备份中心的安全性,还需要占用数据备份中心的大量安全存储资源,进一步提升了数据备份中心的运行和维护成本。
发明内容
本发明实施例提供一种数据备份方法及系统,用以解决现有技术中数据备份占用大量存储资源的技术问题。
本发明实施例提供一种数据备份方法,包括:对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;
将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;
其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。
本发明实施例提供一种数据备份系统,包括:编码模块,用于对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;
存储模块,将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;
矩阵模块,用于生成每次执行所述纠删码编码处理时所需的纠删码矩阵;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。
本发明实施例提供的数据备份方法及系统,通过对待备份数据依次执行多次纠删码编码处理,可以降低了存储节点的存储资源开支;以及,将多个数据块分开在不同的存储节点内进行存储,以降低单一存储节点所需的存储空间开支,提升数据存储的容灾安全性和保密安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的数据备份方法的一个优选实施例的流程图;
图2为图1所示的数据备份方法中步骤S100的一个具体实施方式的执行流程示意图;
图3为本发明提供的数据备份系统的一个优选实施例的结构示意图;
图4为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接或彼此可通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
本发明提供了一种数据备份方法,该方法包括:S100,对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;S400,将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。
具体地,在由于本发明的数据备份方法采用了线性纠删码策略的冗余技术,本领域人员可以理解,纠删码策略是将待备份数据分为k个数据块,记为x=(x1,…,xk)’,通过线性变换c=Ax得到n个数据块(n>k),其中编码矩阵A是n x k的列满秩矩阵,并存储该n个数据块,当该n块数据块中至多个数为n-k个的数据块(包括原始数据块和校验块)缺失时,可以通过纠删码策略确定的重构算法恢复出该k块原始数据块,也即只需要获得n个数据块中的k个数据块,即可恢复出待备份数据。
对数据备份而言,尤其对采用了异地多数存储节点构成的分布式存储系统进行存储的数据备份而言,可以考虑将该n块数据块分别存储至不同的存储节点,相比副本冗余的数据备份方法,每一存储节点所耗费的存储资源降低至原来的1/k,总的存储资源降低至n/k,从而降低了存储节点的存储资源开支。
为了实现数据备份,步骤S100之后继续执行步骤S400,在步骤S400中将相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据。具体而言,执行步骤S400的目的是将多个数据块分开在不同的存储节点内进行存储,以降低单一存储节点所需的存储空间开支,以及提升数据存储的容灾安全性和保密安全性。
容灾安全性指的是,当某一存储节点因不可抗拒因素或人为因素损坏时,实施本发明提供的数据备份方法,依然可以从其余未损坏的存储节点内获得足够的数据块恢复出原始的待备份数据。
保密安全性指的是,若预设置使恢复待备份数据所需的足够数据块分散存储在不同的存储节点内,当某一存储节点遭遇非法侵入行为致使其存储的数据块全部泄露,该非法侵入行为的实施方也仅能获得部分数据块,无法恢复出所述待备份数据的完整信息。
进一步地,在步骤S100中,根据执行纠删码编码处理的次数即为递归次数,该递归次数是正整数,对应于待备份数据递归执行纠删码编码的次数可根据具体情况进行选取,例如待备份数据所递归执行的纠删码编码的次数为2,则递归次数的取值为2。设置递归次数的目的是为了降低存储节点所需提供的存储空间的最小值,这一原理将在后文中详细描述。在步骤S100中,对待备份数据依次执行多次纠删码编码处理,以生成相应级数的多个数据块。所述术语“多次”的取值等于“递归次数”的取值,具体而言,依次执行指的是将前一次纠删码编码处理生成的全部或部分多个数据块分别执行后一次纠删码编码处理,直至纠删码编码处理的总次数等于该递归次数,才视为待备份数据计算完毕。
若将递归次数记为r,r的取值为正整数,且假定为r≥3,请参考图2,图2是图1示出的步骤S100的一个具体实施方式的执行流程示意图,在图2示出的实施例中,步骤S100可以细化为如下多个步骤:步骤S101,对待备份数据执行第一次纠删码编码处理,生成多个第一级数据块;步骤S102,对所述第一级数据块执行第二次纠删码编码处理,生成多个第二级数据块;步骤S103,对所述第二级数据块执行第三次纠删码处理,生成多个第三级数据块、
如步骤S101至步骤S103所描述,每一步骤输出纠删码编码处理的结果(由若干个数据块构成),下一步骤重复对前一步骤的输出结果继续执行纠删码编码处理,直至递归地执行至步骤S10r终止,其中,步骤S10r,对第r-1数据块执行第r次纠删码编码处理,生成多个第r级数据块。结合图1,步骤S100中描述的相应级数的多个数据块即该多个第r级数据块。
继续将递归次数记为r,根据纠删码编码的原理,在对待备份数据执行一次纠删码编码处理之后,若将待备份数据每级经过纠删码编码处理生成总数据量中包含的数据块个数记为N,至少用其中K块用来恢复出待备份数据,其中N和K的取值均为正整数,用于描述数据块的数量,则数据备份时存储节点所需提供的存储空间至少达到总数据量的1/K即可。若对待备份数据按照步骤S100中描述的处理方式进行多次纠删码编码处理,则当递归次数为r次时,数据备份时存储节点所需提供的存储空间至少达到总数据量的1/Kr即可。
本领域技术人员可以理解,只要r大于或等于2,1/Kr的取值就小于1/K的取值,对应至数据备份所需的存储空间,可见,在满足数据恢复要求的前提下,对待备份数据执行多次纠删码编码处理之后所需的存储空间小于仅对待备份数据执行一次纠删码编码处理之后所需的存储空间。这也解释了对于“设置递归次数的目的是为了降低存储节点所需提供的存储空间的最小值”的原理。
进一步地,对于纠删码编码处理的次数的选择,即对于递归次数的选择,本发明提供的数据备份方法的实施者可以根据其所掌握的存储节点的实际情况来实现,例如根据存储节点提供的数据备份存储容量确定递归次数,也可以根据存储节点的数量,还可以根据用户配置确定递归次数;或者,综合考虑上次三种情况来确定递归次数,使得最终备份的实际数据块满足总数据量的压缩比需求。
进一步地,纠删码矩阵采用随机算法生成,且随机算法定时或者实时执行,以便定时或实时更新所述纠删码矩阵。
具体地,结合纠删码编码的原理,为满足数据恢复的可逆性,若将该纠删码矩阵记为A(n x k),其中n、x和k为矩阵A的维度取值,则应满足矩阵A的任一子矩阵B(k x k)是满秩矩阵(即A为列满秩矩阵)。常见的纠删码矩阵例如是柯西矩阵或范德蒙矩阵等,亦可采用随机算法生成矩阵A,例如在使用范德蒙矩阵时随机生成矩阵中的多项式元。优选地,步骤S100中执行纠删码编码处理时所选用的纠删码矩阵可以根据实际情况选用合适的算法,例如里德-所罗门算法、喷泉码算法、金字塔码算法、局部可修复码算法等,本发明对此不做限定。且该纠删码矩阵也可以存储在存储节点内,以便于需要恢复数据的时候供调用。
出于提升数据存储的安全性的考虑,本发明提供的数据备份方法的优选实施例中,考虑使用随机算法生成每次纠删码编码处理所需的纠删码矩阵,该随机算法可以设置为定时执行或实时执行;例如,设置为在执行纠删码编码处理之前实时执行。无论是定时执行还是述实时执行,相较于采用固定纠删码矩阵,都可以降低纠删码矩阵的泄露风险,以进一步提升数据存储的安全性。通常,使用随机算法生成纠删码矩阵这一步骤可以在步骤S100之前执行。
进一步地,结合图1,该数据备份方法,还包括:对相应级数的多个数据块进行加密处理。其包括:S200,采用一次性秘钥对所述待备份数据进行加密处理;S300,对所述一次性秘钥依次执行多次纠删码编码处理,以生成相应级数的多个秘钥数据块;S500,将所述相应级数的多个秘钥数据块分别存储在不同的存储节点内。进一步地,所述多个秘钥数据块在不同存储节点内的存储分布情况需满足所述待备份数据恢复的可逆性。
具体地,数据备份的同时也考虑对待备份数据进行加密,且为了提升秘钥的安全性,考虑使用一次性秘钥对该待备份数据进行加密处理,同时将该一次性秘钥视为数据恢复的不可缺失数据。优选地,对该一次性秘钥也依次执行多次纠删码编码处理,以生成相应级数的多个秘钥数据块,例如,对一次性秘钥执行的纠删码编码处理的次数与对所述待备份数据执行的纠删码编码处理的次数一致,当然也可以不一致;并将该多个秘钥数据块分别存储在不同的存储节点内,多个秘钥数据块在不同存储节点内的存储分布情况满足数据恢复的可逆性即可。
在具体采用本实施例提供的数据备份方法执行数据备份时,步骤S300与步骤S100的顺序可以互换,且该两个步骤也可以同时执行,即该两个步骤的顺序没有限定。另外,步骤S200与步骤S100的顺序可以互换,且该两个步骤也可以同时执行,即该两个步骤的顺序没有限定。
本发明提供的数据备份方法不仅可以本地使用,当待备份数据的数据量较大时,也可以灵活地适用于目前基于分布式存储系统的数据备份应用场景,存储节点可以用分布式存储系统中的数据备份中心来实现。
需要说明的是,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本发明还提供一种数据备份系统,该系统用于执行上述的数据备份方法。如图3所示,该系统包括:编码模块100,用于对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;存储模块200,将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;矩阵模块400,用于生成每次执行所述纠删码编码处理时所需的纠删码矩阵;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。
进一步地,该系统还包括:加密模块300;所述加密模块用于采用一次性秘钥对所述待备份数据进行加密处理;所述编码模块100还用于对所述一次性秘钥依次执行多次纠删码编码处理,以生成相应级数的多个秘钥数据块;所述存储模块200还用于将所述相应级数的多个秘钥数据分别存储在不同的存储节点内;其中,所述多个秘钥数据块在不同存储节点内的存储分布情况需满足所述待备份数据恢复的可逆性。
本发明实施例提供了一种电子设备,如图4所示,该设备包括:处理器(processor)501、通信接口(Communications Interface)502、存储器(memory)503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。处理器501可以调用存储器503上并可在处理器501上运行的计算机程序,以执行上述各实施例提供的数据备份方法,例如包括:对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。
此外,上述的存储器503中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的数据备份方法,例如包括:对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用。
以上所描述的电子设备等实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种数据备份方法,其特征在于,包括:
对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;
将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;
其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用;
其中所述纠删码编码处理的次数依据所述存储节点提供的数据存储容量、所述存储节点的数量和/或用户配置确定,以使经多次所述纠删码编码处理后生产的相应级数的多个数据块均能存储在对应的所述存储节点内;
其中所述纠删码矩阵采用随机算法生成;且所述随机算法定时或者实时执行,以便定时或实时更新所述纠删码矩阵;
其中所述纠删码编码处理采用线性纠删码策略,所述线性纠删码策略是将待备份数据分为k个数据块,记为x=(x1,…,xk)’,通过线性变换c=Ax得到n个数据块,n>k,其中编码矩阵A是列满秩矩阵,并存储该n个数据块,当该n块数据块中至多个数为n-k个的数据块缺失时,能够通过所述线性纠删码策略确定的重构算法恢复出该k块原始数据块,即只需要获得n个数据块中的k个数据块,即能恢复出待备份数据;
其中执行所述纠删码编码处理的次数即为递归次数,该递归次数是正整数,对应于待备份数据递归执行纠删码编码的次数能够根据具体情况进行选取,待备份数据所递归执行的纠删码编码的次数就是递归次数的取值;
其中对待备份数据依次执行多次纠删码编码处理,以生成相应级数的多个数据块,依次执行指的是将前一次纠删码编码处理生成的全部或部分多个数据块分别执行后一次纠删码编码处理,直至纠删码编码处理的总次数等于该递归次数,才视为待备份数据计算完毕。
2.根据权利要求1所述的数据备份方法,其特征在于,还包括:对所述待备份数据进行加密处理。
3.根据权利要求2所述的数据备份方法,其特征在于,对所述相应级数的多个数据块进行加密处理的步骤包括:
采用一次性秘钥对所述待备份数据进行加密处理;
对所述一次性秘钥依次执行多次纠删码编码处理,以生成相应级数的多个秘钥数据块;
将所述相应级数的多个秘钥数据块分别存储在不同的存储节点内。
4.根据权利要求3所述的数据备份方法,其特征在于,所述多个秘钥数据块在不同存储节点内的存储分布情况需满足所述待备份数据恢复的可逆性。
5.一种数据备份系统,其特征在于,包括:
编码模块,用于对待备份数据依次执行多次纠删码编码处理,并根据执行所述纠删码编码处理的次数生成相应级数的多个数据块;
存储模块,将所述相应级数的多个数据块分别存储在不同的存储节点内,以便仅需一个或者若干个所述存储节点内存储的数据块即可恢复所述待备份数据;以及
矩阵模块,用于生成每次执行所述纠删码编码处理时所需的纠删码矩阵;其中,纠删码编码处理时采用的纠删码矩阵为列满秩矩阵,且所述纠删码矩阵存储在所述存储节点内,以供需要恢复所述待备份数据时调用;
其中所述纠删码编码处理的次数依据所述存储节点提供的数据存储容量、所述存储节点的数量和/或用户配置确定,以使经多次所述纠删码编码处理后生产的相应级数的多个数据块均能存储在对应的所述存储节点内;
其中所述纠删码矩阵采用随机算法生成;且所述随机算法定时或者实时执行,以便定时或实时更新所述纠删码矩阵;
其中所述纠删码编码处理采用线性纠删码策略,所述线性纠删码策略是将待备份数据分为k个数据块,记为x=(x1,…,xk)’,通过线性变换c=Ax得到n个数据块,n>k,其中编码矩阵A是列满秩矩阵,并存储该n个数据块,当该n块数据块中至多个数为n-k个的数据块缺失时,能够通过所述线性纠删码策略确定的重构算法恢复出该k块原始数据块,即只需要获得n个数据块中的k个数据块,即能恢复出待备份数据;
其中执行所述纠删码编码处理的次数即为递归次数,该递归次数是正整数,对应于待备份数据递归执行纠删码编码的次数能够根据具体情况进行选取,待备份数据所递归执行的纠删码编码的次数就是递归次数的取值;
其中对待备份数据依次执行多次纠删码编码处理,以生成相应级数的多个数据块,依次执行指的是将前一次纠删码编码处理生成的全部或部分多个数据块分别执行后一次纠删码编码处理,直至纠删码编码处理的总次数等于该递归次数,才视为待备份数据计算完毕。
6.根据权利要求5所述的数据备份系统,其特征在于,还包括:加密模块;
所述加密模块用于采用一次性秘钥对所述待备份数据进行加密处理;
所述编码模块还用于对所述一次性秘钥依次执行多次纠删码编码处理,以生成相应级数的多个秘钥数据块;
所述存储模块还用于将所述相应级数的多个秘钥数据块分别存储在不同的存储节点内;
其中,所述多个秘钥数据块在不同存储节点内的存储分布情况需满足所述待备份数据恢复的可逆性。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述数据备份方法的步骤。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至4任一项所述数据备份方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010548475.XA CN111679939B (zh) | 2020-06-16 | 2020-06-16 | 数据备份方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010548475.XA CN111679939B (zh) | 2020-06-16 | 2020-06-16 | 数据备份方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111679939A CN111679939A (zh) | 2020-09-18 |
CN111679939B true CN111679939B (zh) | 2024-02-02 |
Family
ID=72455232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010548475.XA Active CN111679939B (zh) | 2020-06-16 | 2020-06-16 | 数据备份方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111679939B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051104B (zh) * | 2021-03-11 | 2022-10-11 | 重庆紫光华山智安科技有限公司 | 基于纠删码的磁盘间数据恢复方法及相关装置 |
CN113572813B (zh) * | 2021-06-22 | 2022-06-14 | 复旦大学 | 一种基于网络编码的数据备份方法 |
CN114064346B (zh) * | 2021-11-02 | 2022-07-12 | 北京大道云行科技有限公司 | 一种纠删码数据一致性保障方法及系统 |
CN115858246B (zh) * | 2022-12-27 | 2023-11-21 | 安超云软件有限公司 | 一种容灾演练方法、装置、设备及存储介质 |
CN117290163B (zh) * | 2023-11-21 | 2024-02-13 | 深圳市广通软件有限公司 | 基于关系型数据库的数据容灾备份系统、方法及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105282171A (zh) * | 2015-11-06 | 2016-01-27 | 北京大学深圳研究生院 | 一种安全可靠的分布式云存储方法 |
CN109379397A (zh) * | 2018-08-31 | 2019-02-22 | 阿里巴巴集团控股有限公司 | 基于区块链的交易共识处理方法及装置、电子设备 |
CN111045853A (zh) * | 2019-10-29 | 2020-04-21 | 烽火通信科技股份有限公司 | 一种提高纠删码恢复速度的方法、装置及后台服务器 |
-
2020
- 2020-06-16 CN CN202010548475.XA patent/CN111679939B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105282171A (zh) * | 2015-11-06 | 2016-01-27 | 北京大学深圳研究生院 | 一种安全可靠的分布式云存储方法 |
CN109379397A (zh) * | 2018-08-31 | 2019-02-22 | 阿里巴巴集团控股有限公司 | 基于区块链的交易共识处理方法及装置、电子设备 |
CN111045853A (zh) * | 2019-10-29 | 2020-04-21 | 烽火通信科技股份有限公司 | 一种提高纠删码恢复速度的方法、装置及后台服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN111679939A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111679939B (zh) | 数据备份方法及系统 | |
CN109643258B (zh) | 使用高速率最小存储再生擦除代码的多节点修复 | |
EP3575964B1 (en) | Data storage method, data recovery method in a distributed storage system with m+k storage nodes | |
US11531593B2 (en) | Data encoding, decoding and recovering method for a distributed storage system | |
CN104932953B (zh) | 一种数据分发方法、数据存储方法、相关装置以及系统 | |
US8775860B2 (en) | System and method for exact regeneration of a failed node in a distributed storage system | |
CN104052576B (zh) | 一种云存储下基于纠错码的数据恢复方法 | |
EP2660723A1 (en) | Method of data storing and maintenance in a distributed data storage system and corresponding device | |
RU2680350C2 (ru) | Способ и система распределенного хранения восстанавливаемых данных с обеспечением целостности и конфиденциальности информации | |
US20150178170A1 (en) | Method and Apparatus for Recovering Data | |
CN113505019B (zh) | 一种纠删码数据及校验恢复方法、装置、设备及可读介质 | |
EP3258458B1 (en) | Share recovery system, share recovery apparatus, share recovery method, and program | |
CN110750382A (zh) | 用于提高数据修复性能的最小存储再生码编码方法及系统 | |
CN114281270B (zh) | 一种数据存储方法、系统、设备以及介质 | |
EP2854033A1 (en) | Data recovery method, data recovery device, and distributed storage system | |
US20200319973A1 (en) | Layered error correction encoding for large scale distributed object storage system | |
EP3852275A1 (en) | Method, device and apparatus for storing data, computer readable storage medium | |
CN112000512B (zh) | 一种数据修复方法及相关装置 | |
US20150033070A1 (en) | Data recovery method, data recovery device and distributed storage system | |
CN115454712B (zh) | 一种校验码恢复方法、系统、电子设备及存储介质 | |
CN113326006A (zh) | 一种基于纠删码的分布式块存储系统 | |
CN109101360B (zh) | 一种基于布隆过滤器和交叉编码的数据完整性保护方法 | |
CN109117292B (zh) | 一种集群存储的方法和装置及集群存储系统 | |
CN108279995A (zh) | 一种基于安全再生码的分布式存储系统的存储方法 | |
CN114116321A (zh) | 一种冗余数据管理方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |