一种数据存储和数据恢复方法技术

技术编号:7125190 阅读:162 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供一种数据存储和数据恢复方法,涉及数据安全存储领域,能够减少数据恢复的条件限制,利用有限的存储空间,更大范围地恢复损坏的数据。其存储方法为:对分配的存储空间以行列矩阵形式的逻辑块为单位进行等分割,得到相同的至少两个逻辑存储块;对逻辑存储块进行行、列和第三维校验,得到各自的校验值。恢复方法采用逻辑存储块内数据恢复、逻辑存储块间数据恢复以及逻辑存储块内块间的联合数据恢复。本发明专利技术实施例用于数据存储和读取。

【技术实现步骤摘要】

本专利技术涉及数据安全存储领域,尤其涉及。
技术介绍
数据安全存储技术是一项重要的技术,可用于对重要的数据进行存储,并且在数据出现一定的损坏时可以恢复数据。数据存储应用的环境很多,在所有基本的信号处理系统中,都需要对数字化的信息进行存储,但由于应用场合的不同以及外界的干扰,存储的数据难免存在损坏,读取时无法读取到正确的数据,因此需要某种数据存储和恢复技术对数据进行恢复。例如DVR(Digital Video Recorder,数字视频录像机)就是视频监控领域中的重要设备,可以存储录制的视频数据,由于DVR的安置环境经常会比较差,储存的数据可能会因为电磁原因或者震动原因损坏,因此需要给DVR添加一定的数据安全机制,保证存储的数据出现问题时,能够恢复损坏的数据。在现有技术中,一种存储恢复方法是将待存储的数据分割成多个分割数据,计算多个分割数据的校验和,以及多个分割数据与校验和的按位异或结果,将多个分割数据与生成的校验数据同时进行存储。数据损坏时可以根据校验数据和未损坏的数据进行恢复。 但该方法将数据进行重复存储,占用了较多的额外存储空间。另一种存储恢复方法是在所存储的每个数据逻辑存储块中设置实际存储数据的双重校验码,并为每个数据逻辑存储块配置特殊标志和编号。数据损坏时根据数据逻辑存储块的特殊标志找到该组数据的各个数据逻辑存储块;然后,根据数据逻辑存储块的编号将各个数据逻辑存储块顺序连接起来;最后,将每个数据逻辑存储块通过校验码进行数据恢复。该方法能够恢复一行或一列损坏的数据,但对于恢复多行多列数据损坏的情况,则有较大限制。
技术实现思路
本专利技术的实施例提供一种数据存储和恢复方法,能够减少数据恢复的条件限制, 利用有限的存储空间,更大范围地恢复损坏的数据。为达到上述目的,本专利技术的实施例采用如下技术方案—方面,提供了一种数据存储方法,包括对分配的存储空间以行列矩阵形式的逻辑块为单位进行等分割,得到相同的至少两个逻辑存储块,其中,每个逻辑存储块为行列矩阵形式,所述至少两个逻辑存储块叠加构成三维矩阵形式;对每个逻辑存储块的各行数据分别进行校验,得到每行的行校验值;对每个逻辑存储块的各列数据分别进行校验,得到每列的列校验值;对所述三维矩阵形式的至少两个逻辑存储块第三维上的每组数据分别进行校验, 得到每组数据的第三维校验值。另一方面,提供了一种采用上述数据存储方法的数据恢复方法,包括逻辑存储块内数据恢复和/或逻辑存储块间数据恢复;所述逻辑存储块内数据恢复包括若损坏数据所在的列上只有所述损坏数据一处损坏时,则用所述列上其他未损坏的所有数据以及所述列的列校验值对所述损坏数据进行恢复;和/或若损坏数据所在的行上只有所述损坏数据一处损坏时,则用所述行上其他未损坏的所有数据以及所述行的行校验值对所述损坏数据进行恢复;所述逻辑存储块间数据恢复包括若损坏数据所在的第三维组中只有所述损坏数据一处损坏时,则用所述第三维组中其他未损坏的所有数据以及所述第三维组的第三维校验值对所述损坏数据进行恢复。本专利技术实施例提供的数据存储和数据恢复方法,在数据存储时,对分配的存储空间以行列矩阵形式的逻辑块为单位进行等分割,得到相同的多个逻辑存储块,其中,每个逻辑存储块为行列矩阵形式,多个逻辑存储块叠加构成三维矩阵形式;对每个逻辑存储块的各行、各列数据分别进行校验,得到每行的行校验值以及每列的列校验值;对三维矩阵形式的多个逻辑存储块第三维上的每组数据分别进行校验,得到每组数据的第三维校验值。由此,得到了横向、纵向和第三维的三组校验值,以便在恢复数据时能够针对多行多列进行恢复;另外,本专利技术实施例所得到的校验值数量并不很多,校验值相对原始数据而言所占空间并不很大,解决了现有技术中占用存储空间大的问题,而同时又能够提供较好的数据恢复功能。在数据恢复时,采用了逻辑存储块内数据恢复、逻辑存储块间数据恢复以及逻辑存储块内、块间联合数据恢复。丰富了现有技术中的数据恢复方式,在块内的行、列数据恢复的基础上,通过块间的第三维数据恢复减少了数据恢复的条件限制,利用有限的存储空间,能够更大范围地恢复损坏的数据,且不增加恢复难度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的数据存储方法的流程框图;图2为本专利技术实施例提供的数据存储方法中,一个逻辑存储块的逻辑结构示意图;图3为本专利技术实施例提供的数据存储方法中,多个逻辑存储块的逻辑结构示意图;图4为本专利技术实施例提供的数据存储方法中,一个逻辑存储块内的行校验和列校验示意图;图5为本专利技术实施例提供的数据存储方法中,多个逻辑存储块的第三维校验的示意图;图6为本专利技术实施例提供的数据恢复方法中,逻辑存储块块内恢复的逻辑结构示意图7为本专利技术实施例提供的数据恢复方法中,逻辑存储块块内恢复的逻辑结构另一示意图;图8为本专利技术实施例提供的数据恢复方法中,逻辑存储块块间恢复的逻辑结构示意图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供的数据存储方法,如图1所示,包括以下步骤S101、对分配的存储空间以行列矩阵形式的逻辑块为单位进行等分割,得到相同的至少两个逻辑存储块,其中,每个逻辑存储块为行列矩阵形式,至少两个逻辑存储块叠加构成三维矩阵形式。具体的,可以先将分配的存储空间形成逻辑上的行列矩阵形式,然后以预定的行列矩阵形式的逻辑块为单位进行等分隔,该逻辑块的大小可以由用户自己决定。分割后得到多个相同的逻辑存储块,如图2所示,假设本实施例中的一个逻辑存储块为8行X 10列。 多个逻辑存储块叠加构成三维矩阵形式,结构如图3所示,假设本实施例共分为3个逻辑存储块。进一步地,可以为要存储的数据分配连续的存储空间,这样能够加快磁盘读写速度,并且在后续分块处理数据时,能够使数据整齐易处理。S102、对每个逻辑存储块的各行数据分别进行校验,得到每行的行校验值。如图4所示,表示一个逻辑存储块在进行第一行的校验,得到第一行校验值。当本逻辑存储块的各行都校验结束后,得到8个行校验值。S103、对每个逻辑存储块的各列数据分别进行校验,得到每列的列校验值。如图4所示,表示一个逻辑存储块在进行第一列的校验,得到第一列校验值。当本逻辑存储块的各列都校验结束后,得到10个列校验值。S104、对三维矩阵形式的至少两个逻辑存储块第三维上的每组数据分别进行校验,得到每组数据的第三维校验值。在本实施例中,共等分得到了 3个逻辑存储块,即对这三维矩阵形式的3个逻辑存储块第三维上的每组数据分别进行校验,如图5所示,表示对三维矩阵的左上角的一组数据进行校验,得到左上角这一组的第三维校验值。由于每个逻辑存储块为8行XlO列,所以第三维校验结束后,共得到80个第三维校验值。在本实施例中,步骤S102、S103、S本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,包括:对分配的存储空间以行列矩阵形式的逻辑块为单位进行等分割,得到相同的至少两个逻辑存储块,其中,每个逻辑存储块为行列矩阵形式,所述至少两个逻辑存储块叠加构成三维矩阵形式;对每个逻辑存储块的各行数据分别进行校验,得到每行的行校验值;对每个逻辑存储块的各列数据分别进行校验,得到每列的列校验值;对所述三维矩阵形式的至少两个逻辑存储块第三维上的每组数据分别进行校验,得到每组数据的第三维校验值。

【技术特征摘要】

【专利技术属性】
技术研发人员:秦晓红
申请(专利权)人:海信集团有限公司
类型:发明
国别省市:95

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

1