CN111007992B - 一种磁盘数据存储表示方法、***、存储介质 - Google Patents

一种磁盘数据存储表示方法、***、存储介质 Download PDF

Info

Publication number
CN111007992B
CN111007992B CN202010149119.0A CN202010149119A CN111007992B CN 111007992 B CN111007992 B CN 111007992B CN 202010149119 A CN202010149119 A CN 202010149119A CN 111007992 B CN111007992 B CN 111007992B
Authority
CN
China
Prior art keywords
data
bad
area
cell
disk
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
Application number
CN202010149119.0A
Other languages
English (en)
Other versions
CN111007992A (zh
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.)
Foshan Power Supply Bureau of Guangdong Power Grid Corp
Original Assignee
Foshan Power Supply Bureau of Guangdong Power Grid Corp
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 Foshan Power Supply Bureau of Guangdong Power Grid Corp filed Critical Foshan Power Supply Bureau of Guangdong Power Grid Corp
Priority to CN202010149119.0A priority Critical patent/CN111007992B/zh
Publication of CN111007992A publication Critical patent/CN111007992A/zh
Application granted granted Critical
Publication of CN111007992B publication Critical patent/CN111007992B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明涉及一种磁盘数据存储表示方法、***、存储介质,所述方法包括:S1:将磁盘分成数据大小相同的多个小区,每个小区固定大小,然后将磁盘做标记,每隔N个数据区设置校验块Pm);S2:确定磁盘存储算法;S3:正常读取数据;遇到坏区的时候,检测坏区是否跨越小区;若坏道不跨越小区,则通过S2所确定的存储算法恢复坏区数据;若坏道跨越小区,则判断坏区跨越的程度,确定是否可以恢复,对于可以恢复的,通过S2的算法进行恢复,对于不可恢复的,判断为不可恢复区,不进行恢复。本发明可将数据区分块处理,并添加冗余块,当存储设备因为损坏而出现错误的时候,可以根据冗余块恢复坏道数据。再使用传统方法避开坏道。

Description

一种磁盘数据存储表示方法、***、存储介质
技术领域
本发明涉及数据存储领域,更具体地,涉及一种磁盘数据存储表示方法、***、存储介质。
背景技术
在现实生活中,数据的重要性与价值往往大于存储数据的磁盘介质的本身,于是人们想方设法的保证数据的安全性。在存储设备中,往往会出现坏区或坏道。而针对坏道的处理方法往往是在出现坏道的时候,将坏道避开使用。所以,当存储设备出现坏道或坏区的时候,坏道区的数据永久丢失了,无法恢复。
发明内容
本发明为克服上述现有技术所述的当存储设备出现坏道或坏区的时候,坏道区的数据丢失而无法恢复的缺陷,提供一种磁盘数据存储表示方法、***、存储介质。
所述方法包括以下步骤:
S1:将磁盘分成数据大小相同的多个小区,每个小区固定大小,然后将磁盘做标记,每隔N个数据区设置一个冗余区,即校验块Pm);其中N为正整数;
S2:确定磁盘存储算法;
S3:正常读取数据;遇到坏区的时候,检测坏区是否跨越小区;如果坏道不跨越小区,则通过S2所确定的存储算法恢复坏区数据;如果坏道跨越小区,则判断坏区跨越的程度,确定是否可以恢复,对于可以恢复的,通过S2所确定的算法进行恢复,对于不可恢复的,判断为不可恢复区,不进行恢复。
优选地,S1中校验块Pm)的每数字位对应满足:
Figure 184639DEST_PATH_IMAGE001
其中,m为坏的数据位,A i 为数据块,
Figure 146779DEST_PATH_IMAGE002
为异或运算,A(m)为数据小区的第m个二 进制位,l为数据区大小,i和n为正整数,且i∈[1,n-1]。
优选地,
Figure 525939DEST_PATH_IMAGE003
可表示为:
Figure 889924DEST_PATH_IMAGE004
优选地,S2中磁盘存储算法的确定过程为:判断大区A里面k号小区是否有坏道,若有坏道则通过大区Ak号小区之间的异或运算重新计算出来。
优选地,S2中磁盘存储算法的计算公式为:
Figure 63547DEST_PATH_IMAGE005
其中,m为坏的数据位。
优选地,S2中磁盘存储算法的计算公式
Figure 185087DEST_PATH_IMAGE005
可表示成:
Figure 148364DEST_PATH_IMAGE006
优选地,S3中判断坏区跨越的程度,确定是否可以恢复的具体操作为:
设坏道大小为BR,小区大小为L,若BR≤L,则可恢复,利用公式
Figure 583500DEST_PATH_IMAGE006
进行恢复,
如果2L>BR>L,则会丢失坏区头部数据,即坏区开始起BR-L的数据,而无法挽回;同样也会丢失坏区尾部数据,即丢失坏区结束倒数BR-L的数据;
如果BR≥2L,则不可恢复。
本发明所述用于磁盘数据存储表示方法的***,包括存储器和处理器,所述存储器中包括所述磁盘数据存储表示方法的程序,所述处理器对存储器进行操作,实现磁盘数据存储表示方法。
本发明所述可读磁盘数据存储表示方法的计算机存储介质,包括磁盘数据存储表示方法的程序;所述计算机介质被处理器执行时实现所述磁盘数据存储表示方法。
与现有技术相比,本发明技术方案的有益效果是:本发明可将数据区分块处理,并添加冗余块,当存储设备因为损坏而出现错误的时候,可以根据冗余块恢复坏道数据。再使用传统方法避开坏道。
附图说明
图1为一种磁盘数据存储表示方法流程图。
图2为磁盘分成数据大小相同的多个小区示意图。
图3为坏区是否可恢复示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1:
本实施例提供一种磁盘数据存储表示方法。如图1所示,所述方法包括以下步骤:
S1:将磁盘分成数据大小相同的多个小区。每个小区固定大小,本实施例取4MB,然后将磁盘做如图2所示标记,每隔N个数据区设置一个冗余区P
S2:确定磁盘存储算法;
冗余区的每数字位(bit)对应满足:
Figure 708451DEST_PATH_IMAGE001
表示成:
Figure 864757DEST_PATH_IMAGE004
(1)
其中,A i 为数据块,P为校验块,
Figure 772670DEST_PATH_IMAGE002
为异或运算,A(m)指的是数据小区的第m个二 进制位,l为数据区大小,i和n为正整数,且i∈[1,n-1]。
这种数据表示算法的空间利用率很高,利用率为 ( N - 1 ) / N
如果A大区里面k号小区有坏道,m为坏的数据位,
则通过 它们之间的异或运算重新计算出来,如以下公式:
Figure 376826DEST_PATH_IMAGE005
表示成:
Figure 892253DEST_PATH_IMAGE006
(2)
由上述公式可知,任意一个数据块的丢失,都是可恢复的。
S3:正常读取数据;遇到坏区的时候,监测数据坏区是否跨小区。如图3所示:
如果不跨小区,则通过公式(2)恢复坏区数据;通过传统方法避开磁盘坏区。
如果坏道跨小区,则要看跨的程度,如果坏区大小小于每个小区大小,则可通过公式(2)照常恢复。
设坏道大小为BR,小区大小为L,若BR≤L,则公式(2)起作用,
如果2L>BR>L,则会丢失坏区头部起(BR-L)的数据而无法挽回,同样也会丢失坏区尾部数据(BR-L),
若BR≤L,则可通过公式(2)恢复所有数据;若2L>BR>L,则如图3中黑色部分(BR-L)不可恢复,其他部分可以通过公式(2)恢复。
实施例2:
本实施例提供一种用于磁盘数据存储表示方法的***,所述***包括存储器和处理器,所述存储器中包括实施例1所述磁盘数据存储表示方法的程序,所述处理器对存储器进行操作,实现磁盘数据存储表示方法。
实施例3:
本实施例提供一种可读磁盘数据存储表示方法的计算机存储介质,所述计算机存储介质中包括实施例1所述的磁盘数据存储表示方法的程序;所述计算机介质被处理器执行时实现所述的磁盘数据存储表示方法。
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (7)

1.一种磁盘数据存储表示方法,其特征在于,所述方法包括以下步骤:
S1:将磁盘分成数据大小相同的多个小区,每个小区固定大小,然后将磁盘做标记,每隔N个数据区设置一个冗余区,即校验块Pm);
S2:确定磁盘存储算法;
S3:正常读取数据;遇到坏区的时候,检测坏区是否跨越小区;如果坏区不跨越小区,则通过S2所确定的存储算法恢复坏区数据;如果坏区跨越小区,则判断坏区跨越的程度,确定是否可以恢复,对于可以恢复的,通过S2所确定的算法进行恢复,对于不可恢复的,判断为不可恢复区,不进行恢复;
S3中判断坏区跨越的程度,确定是否可以恢复的具体操作为:
设坏区大小为BR,小区大小为L,若BR≤L,则可恢复,利用公式
Figure 409161DEST_PATH_IMAGE001
进行恢复;
其中,
Figure 919777DEST_PATH_IMAGE002
为在名为A大区里面第k个小区中的第m位的已损坏待恢复数据位的值;m 为小区中数据位的位置,即第m个数据位;
Figure 965093DEST_PATH_IMAGE003
为在名为A的大区里面第i号小区中的第m 个数据位的值;i为正常数据位所在的小区在大区中的位置,即第i个小组;k为待恢复数据 位所在的小区在大区中的位置,即第k个小区;m为小区中数据位的位置,即第m个数据位;n 为大区中数据小区的总个数,Z代表整数;l为小区中数据位总个数;
如果2L>BR>L,则会丢失坏区头部数据,即坏区开始起BR-L的数据,而无法挽回;同样也会丢失坏区尾部数据,即丢失坏区结束倒数BR-L的数据;
如果BR≥2L,则不可恢复。
2.根据权利要求1所述的磁盘数据存储表示方法,其特征在于,S1中校验块Pm)的每数字位对应满足:
Figure 563565DEST_PATH_IMAGE004
其中,m为坏的数据位,A i 为数据块,
Figure 971412DEST_PATH_IMAGE005
为异或运算 。
3.根据权利要求2所述的磁盘数据存储表示方法,其特征在于,
Figure 59454DEST_PATH_IMAGE006
可表示为:
Figure 529749DEST_PATH_IMAGE007
其中,l为数据区大小。
4.根据权利要求3所述的磁盘数据存储表示方法,其特征在于,S2中磁盘存储算法的确定过程为:判断大区A里面k号小区是否有坏区,若有坏区则通过大区Ak号小区之间的异或运算重新计算出来。
5.根据权利要求4所述的磁盘数据存储表示方法,其特征在于,S2中磁盘存储算法的计算公式为:
Figure 994229DEST_PATH_IMAGE008
可表示成:
Figure 991004DEST_PATH_IMAGE009
其中,m为坏的数据位。
6.一种用于磁盘数据存储表示方法的***,其特征在于,所述***包括存储器和处理器,所述存储器中包括权利要求1-5任一项所述磁盘数据存储表示方法的程序,所述处理器对存储器进行操作,实现磁盘数据存储表示方法。
7.一种可读磁盘数据存储表示方法的计算机存储介质,其特征在于,所述计算机存储介质中包括权利要求1-5任一项所述的磁盘数据存储表示方法的程序;所述计算机存储介质被处理器执行时实现权利要求1-5任一项所述的磁盘数据存储表示方法。
CN202010149119.0A 2020-03-04 2020-03-04 一种磁盘数据存储表示方法、***、存储介质 Active CN111007992B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010149119.0A CN111007992B (zh) 2020-03-04 2020-03-04 一种磁盘数据存储表示方法、***、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010149119.0A CN111007992B (zh) 2020-03-04 2020-03-04 一种磁盘数据存储表示方法、***、存储介质

Publications (2)

Publication Number Publication Date
CN111007992A CN111007992A (zh) 2020-04-14
CN111007992B true CN111007992B (zh) 2020-08-04

Family

ID=70121008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010149119.0A Active CN111007992B (zh) 2020-03-04 2020-03-04 一种磁盘数据存储表示方法、***、存储介质

Country Status (1)

Country Link
CN (1) CN111007992B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101527142A (zh) * 2009-04-17 2009-09-09 杭州华三通信技术有限公司 一种磁盘冗余阵列中数据的读写方法和设备
CN101840366A (zh) * 2010-05-13 2010-09-22 上海交通大学 环链式n+1位奇偶校验码的存储方法
CN102043689A (zh) * 2010-12-28 2011-05-04 武汉固捷联讯科技有限公司 一种用于固态存储设备的容错设计方法
CN103513942A (zh) * 2013-10-21 2014-01-15 华为技术有限公司 独立冗余磁盘阵列的重构方法及装置
CN103559102A (zh) * 2013-10-22 2014-02-05 北京航空航天大学 数据冗余处理方法、装置和分布式存储***
CN104318960A (zh) * 2014-09-15 2015-01-28 华为数字技术(成都)有限公司 一种硬盘坏道的修复方法及装置
CN104765693A (zh) * 2014-01-06 2015-07-08 国际商业机器公司 一种用于存储数据的方法、装置和***
CN107204196A (zh) * 2016-03-17 2017-09-26 株式会社东芝 磁盘装置、数据处理装置及数据记录方法
CN108536548A (zh) * 2018-04-10 2018-09-14 网宿科技股份有限公司 一种磁盘坏道的处理方法、装置及计算机存储介质
CN109308238A (zh) * 2018-12-03 2019-02-05 郑州云海信息技术有限公司 一种存储***磁盘阵列坏盘调节的方法、装置及设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5348300B2 (ja) * 2012-09-07 2013-11-20 富士通株式会社 データ管理プログラム、およびマルチノードストレージシステム
CN106537352B (zh) * 2014-06-17 2020-03-10 慧与发展有限责任合伙企业 分布式存储数据恢复
CN104866239B (zh) * 2015-05-26 2018-09-14 浙江宇视科技有限公司 一种高可用性的视频存储方法
US10289321B1 (en) * 2017-05-05 2019-05-14 Amazon Technologies, Inc. Bad block table recovery in a solid state drives
US10936441B2 (en) * 2017-12-15 2021-03-02 Microsoft Technology Licensing, Llc Write-ahead style logging in a persistent memory device
US10672497B2 (en) * 2018-04-03 2020-06-02 SK Hynix Inc. Memory system and method for bad block management
CN110413208B (zh) * 2018-04-28 2023-05-30 伊姆西Ip控股有限责任公司 用于管理存储***的方法、设备和计算机程序产品

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101527142A (zh) * 2009-04-17 2009-09-09 杭州华三通信技术有限公司 一种磁盘冗余阵列中数据的读写方法和设备
CN101840366A (zh) * 2010-05-13 2010-09-22 上海交通大学 环链式n+1位奇偶校验码的存储方法
CN102043689A (zh) * 2010-12-28 2011-05-04 武汉固捷联讯科技有限公司 一种用于固态存储设备的容错设计方法
CN103513942A (zh) * 2013-10-21 2014-01-15 华为技术有限公司 独立冗余磁盘阵列的重构方法及装置
CN103559102A (zh) * 2013-10-22 2014-02-05 北京航空航天大学 数据冗余处理方法、装置和分布式存储***
CN104765693A (zh) * 2014-01-06 2015-07-08 国际商业机器公司 一种用于存储数据的方法、装置和***
CN104318960A (zh) * 2014-09-15 2015-01-28 华为数字技术(成都)有限公司 一种硬盘坏道的修复方法及装置
CN107204196A (zh) * 2016-03-17 2017-09-26 株式会社东芝 磁盘装置、数据处理装置及数据记录方法
CN108536548A (zh) * 2018-04-10 2018-09-14 网宿科技股份有限公司 一种磁盘坏道的处理方法、装置及计算机存储介质
CN109308238A (zh) * 2018-12-03 2019-02-05 郑州云海信息技术有限公司 一种存储***磁盘阵列坏盘调节的方法、装置及设备

Also Published As

Publication number Publication date
CN111007992A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
US8108750B2 (en) Raid 3+3
US8321762B2 (en) Method for creating an error correction coding scheme
CN108170555A (zh) 一种数据恢复方法及设备
US20140372838A1 (en) Bad disk block self-detection method and apparatus, and computer storage medium
JPS60163138A (ja) エラ−訂正方式
CN108228382B (zh) 一种针对evenodd码单盘故障的数据恢复方法
US8762823B2 (en) Method for performing data shaping, and associated memory device and controller thereof
CN101192834A (zh) 纠错装置和纠错方法
CN108829358B (zh) 固态硬盘的坏块管理方法以及固态硬盘
CN106874140B (zh) 数据存储方法及装置
US10860423B2 (en) Method and apparatus for performing dynamic recovery management regarding redundant array of independent disks
CN112596674B (zh) 一种用于固态硬盘主控缓存数据双重保护的方法及***
CN102135925A (zh) 用于检测错误检查和纠正内存的方法和装置
CN112000512B (zh) 一种数据修复方法及相关装置
US5467361A (en) Method and system for separate data and media maintenance within direct access storage devices
CN111007992B (zh) 一种磁盘数据存储表示方法、***、存储介质
JP6524126B2 (ja) メモリ制御装置及びメモリ制御方法
US20220091936A1 (en) Systems and methods for encoding metadata
CN107977285A (zh) 一种纠删码存储机制的数据修改方法、装置及介质
WO2021027271A1 (zh) 坏块信息保护方法、装置、计算机设备及存储介质
CN111026332B (zh) Ssd坏块信息保护的方法、装置、计算机设备及存储介质
JPH11143787A (ja) 記録再生装置
CN108572882B (zh) 一种数据存储的方法及存储设备
CN116521433A (zh) 一种数据保护方法、***、设备和存储介质
Iliadis Effect of lazy rebuild on reliability of erasure-coded storage systems

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