一种纠删码存储机制的数据修改方法、装置及介质制造方法及图纸

技术编号:17837351 阅读:23 留言:0更新日期:2018-05-03 19:07
本发明专利技术公开了一种纠删码存储机制的数据修改方法、装置及介质,该方法的步骤包括:设置新数据,并获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址;进行新数据与目标原始数据之间的比对以获取差异数据;通过预设的纠删码编码算法对差异数据进行编码以得到差异冗余数据;在第二偏移地址中读取原始冗余数据,将差异冗余数据与原始冗余数据相加以得到结果冗余数据;将新数据写入第一偏移地址以覆盖目标原始数据,并将结果冗余数据写入第二偏移地址以覆盖原始冗余数据。本方法相对提高磁盘的整体工作效率以及延长使用寿命。此外,本发明专利技术还提供一种纠删码存储机制的数据修改装置及介质,有益效果如上所述。

Data correction method, device and medium for erasure code storage mechanism

The invention discloses a data modification method, device and medium of erasure code storage mechanism. The steps include: setting new data, obtaining the first offset address of the original data of the target and the second offset address of the original redundant data, and comparing the new data with the target original data to obtain the data. The discrepant data is encoded by the preset erasure coding algorithm to obtain the discrepancy data, the original redundant data is read in the second offset address, the redundant data is added to the original redundant data to get the result redundant data, and the new data is written into the first offset address to cover the target original. Data and write redundant data to the second offset address to cover the original redundant data. This method can improve the overall efficiency and prolong the service life of the disk. In addition, the invention also provides a data correction device and a medium for the erasure code storage mechanism, which has the beneficial effect as mentioned above.

【技术实现步骤摘要】
一种纠删码存储机制的数据修改方法、装置及介质
本专利技术涉及数据存储领域,特别是涉及一种纠删码存储机制的数据修改方法、装置及介质。
技术介绍
伴随着人们逐渐丰富的生活,数据也在呈现爆炸式的增长。在当前的大数据环境下,对存储系统容量的要求不断提高的同时存储系统的对于数据存储的安全性也逐渐成为人为关注的重点。纠删码是当前普遍使用的一种数据保护方法,通过纠删算法将原始的写入数据切分为M个原始数据块,并通过对M个数据块进行纠删的编码运算得到K个冗余数据块,当任意数据块出现丢失时或损坏时均可以通过其余的数据块进行纠删的解码运算实现数据恢复,进而保证了数据的安全。但是当前对原始数据进行修改时,需要读取所有的原始数据块,进而在根据需求对数据块进行修改后,重新进行编码运算以生成冗余数据块,并重新写入磁盘。因此,即使对原始数据的修改内容很少时,也需要对所有的原始数据进行读写,因此会对磁盘造成较大的资源开销并且导致写放大现象,进而降低了磁盘的整体工作效率以及使用寿命。由此可见,提供一种纠删码存储机制的数据修改方法,在修改数据时相对减少对磁盘的资源开销并且避免写放大现象,以相对提高磁盘的整体工作效率以及延长使用寿命,是本领域技术人员亟待解决的问题。
技术实现思路
本专利技术的目的是提供一种纠删码存储机制的数据修改方法、装置及介质,在修改数据时相对减少对磁盘的资源开销并且避免写放大现象,以相对提高磁盘的整体工作效率以及延长使用寿命。为解决上述技术问题,本专利技术提供一种纠删码存储机制的数据修改方法,包括:设置新数据,并获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址;其中,原始冗余数据为目标原始数据对应的冗余数据;在第一偏移地址中读取目标原始数据,并进行新数据与目标原始数据之间的比对以获取差异数据;通过预设的纠删码编码算法对差异数据进行编码以得到差异冗余数据;在第二偏移地址中读取原始冗余数据,将差异冗余数据与原始冗余数据相加以得到结果冗余数据;将新数据写入第一偏移地址以覆盖目标原始数据,并将结果冗余数据写入第二偏移地址以覆盖原始冗余数据。优选的,目标原始数据与原始冗余数据存储于不同磁盘。优选的,纠删码编码算法具体为Reed-Solomon编码算法。优选的,获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址具体为:在RAID5磁盘阵列中获取第一偏移地址以及第二偏移地址。优选的,该方法进一步包括:将新数据与结果冗余数据对应写入至日志。此外,本专利技术还提供一种纠删码存储机制的数据修改装置,包括:设置获取模块,用于设置新数据,并获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址;差异比对模块,用于在第一偏移地址中读取目标原始数据,并进行新数据与目标原始数据之间的比对以获取差异数据;编码计算模块,用于通过预设的纠删码编码算法对差异数据进行编码以得到差异冗余数据;冗余计算模块,用于在第二偏移地址中读取原始冗余数据,将差异冗余数据与原始冗余数据相加以得到结果冗余数据;写入覆盖模块,用于将新数据写入第一偏移地址以覆盖目标原始数据,并将结果冗余数据写入第二偏移地址以覆盖原始冗余数据。优选的,该装置进一步包括:日志记录模块,用于将新数据与结果冗余数据对应写入至日志。此外,本专利技术还提供一种纠删码存储机制的数据修改装置,包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序时实现如上述的纠删码存储机制的数据修改方法的步骤。此外,本专利技术还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的纠删码存储机制的数据修改方法的步骤。本专利技术所提供的纠删码存储机制的数据修改方法,仅获取需要修改的数据所在的偏移地址,进而对该偏移地址下的目标原始数据进行读取以及修改。由于需要由新数据取代原有的数据,为了新数据能够安全可靠的存储,需要进行纠删码的编码处理,但是由于新数据往往不是完整的可用的数据而无法直接进行编码,因此需要先对比在该偏移地址下的原始数据与新数据之间的差异,进而仅对差异部分的数据进行编码处理得到差异冗余数据,并追加至原始冗余数据得到结果冗余数据,进而实现对新数据部分的编码处理,保证了在修改原始数据的同时,冗余数据也发生相应的修改。可见,本方法仅读写待修改部分的数据以进行修改而非所有的原始数据块,因此在相对减少了磁盘的资源开销的同时避免了写放大现象的发生,进而提高了磁盘的整体工作效率并延长了磁盘的使用寿命,也同样保证了修改后数据的可用性及安全性。此外,本专利技术还提供一种纠删码存储机制的数据修改装置及介质,有益效果如上所述。附图说明为了更清楚地说明本专利技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种纠删码存储机制的数据修改方法的流程图;图2为本专利技术实施例提供的一种纠删码存储机制的数据修改装置结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本专利技术保护范围。本专利技术的核心是提供一种纠删码存储机制的数据修改方法,在修改数据时相对减少对磁盘的资源开销并且避免写放大现象,以相对提高磁盘的整体工作效率以及延长使用寿命。本专利技术的另核心是提供一种纠删码存储机制的数据修改装置及介质。为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。实施例一图1为本专利技术实施例提供的一种纠删码存储机制的数据修改方法的流程图。请参考图1,纠删码存储机制的数据修改方法的具体步骤包括:步骤S10:设置新数据,并获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址。其中,原始冗余数据为目标原始数据对应的冗余数据。需要说明的是,在本步骤所指的新数据是用于取代目标原始数据的最新数据,目标原始数据是当前存储在磁盘中的数据;第一偏移地址用于表示目标原始数据在磁盘中的存储位置;第二偏移地址用于表示原始冗余数据在磁盘中的存储位置,原始冗余数据是目标原始数据对应的冗余数据,用于当目标原始数据出现损坏以及丢失时通过纠删码的解码操作对其进行恢复,另外,本步骤中所指的第一偏移地址与第二偏移地址可以为同一磁盘中的偏移地址,也可以为不同磁盘中的偏移地址,应根据实际的使用场景而定,在此不做具体限定。步骤S11:在第一偏移地址中读取目标原始数据,并进行新数据与目标原始数据之间的比对以获取差异数据。步骤S12:通过预设的纠删码编码算法对差异数据进行编码以得到差异冗余数据。步骤S13:在第二偏移地址中读取原始冗余数据,将差异冗余数据与原始冗余数据相加以得到结果冗余数据。需要说明的是,目标原始数据往往是完整数据的某一组成部分,并不具有完整数据的所具有的性质,此外,不同组成部分的数据之间也往往存在有关联关系,因此由新数据直接生成的冗余数据不能正常应用于当前的冗余备份机制中,无法实现对新数据本文档来自技高网
...
一种纠删码存储机制的数据修改方法、装置及介质

【技术保护点】
一种纠删码存储机制的数据修改方法,其特征在于,包括:设置新数据,并获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址;其中,所述原始冗余数据为所述目标原始数据对应的冗余数据;在所述第一偏移地址中读取所述目标原始数据,并进行所述新数据与所述目标原始数据之间的比对以获取差异数据;通过预设的纠删码编码算法对所述差异数据进行编码以得到差异冗余数据;在所述第二偏移地址中读取所述原始冗余数据,将所述差异冗余数据与所述原始冗余数据相加以得到结果冗余数据;将所述新数据写入所述第一偏移地址以覆盖所述目标原始数据,并将所述结果冗余数据写入所述第二偏移地址以覆盖所述原始冗余数据。

【技术特征摘要】
1.一种纠删码存储机制的数据修改方法,其特征在于,包括:设置新数据,并获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址;其中,所述原始冗余数据为所述目标原始数据对应的冗余数据;在所述第一偏移地址中读取所述目标原始数据,并进行所述新数据与所述目标原始数据之间的比对以获取差异数据;通过预设的纠删码编码算法对所述差异数据进行编码以得到差异冗余数据;在所述第二偏移地址中读取所述原始冗余数据,将所述差异冗余数据与所述原始冗余数据相加以得到结果冗余数据;将所述新数据写入所述第一偏移地址以覆盖所述目标原始数据,并将所述结果冗余数据写入所述第二偏移地址以覆盖所述原始冗余数据。2.根据权利要求1所述的方法,其特征在于,所述目标原始数据与所述原始冗余数据存储于不同磁盘。3.根据权利要求1所述的方法,其特征在于,所述纠删码编码算法具体为Reed-Solomon编码算法。4.根据权利要求1所述的方法,其特征在于,所述获取目标原始数据所在的第一偏移地址以及原始冗余数据所在的第二偏移地址具体为:在RAID5磁盘阵列中获取所述第一偏移地址以及所述第二偏移地址。5.根据权利要求1-4任意一项所述的方法,其特征在于,该方法进一步包括:将所述新数据与所述结果冗余数据对应写入至日志。6.一种纠删...

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

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

1