CN113535072A - 一种多维冗余纠错的光盘库集群及多维冗余纠错方法 - Google Patents
一种多维冗余纠错的光盘库集群及多维冗余纠错方法 Download PDFInfo
- Publication number
- CN113535072A CN113535072A CN202010323375.7A CN202010323375A CN113535072A CN 113535072 A CN113535072 A CN 113535072A CN 202010323375 A CN202010323375 A CN 202010323375A CN 113535072 A CN113535072 A CN 113535072A
- Authority
- CN
- China
- Prior art keywords
- data
- optical
- disc
- library
- check
- 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
Links
- 230000003287 optical effect Effects 0.000 title claims abstract description 483
- 238000012937 correction Methods 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000002950 deficient Effects 0.000 claims description 65
- 238000012795 verification Methods 0.000 claims description 50
- 230000007547 defect Effects 0.000 claims description 44
- 238000004364 calculation method Methods 0.000 claims description 8
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000006073 displacement reaction Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 238000003491 array Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- CURLTUGMZLYLDI-UHFFFAOYSA-N Carbon dioxide Chemical compound O=C=O CURLTUGMZLYLDI-UHFFFAOYSA-N 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 229910002092 carbon dioxide Inorganic materials 0.000 description 1
- 239000001569 carbon dioxide Substances 0.000 description 1
- 238000013506 data mapping Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B17/00—Guiding record carriers not specifically of filamentary or web form, or of supports therefor
- G11B17/02—Details
- G11B17/04—Feeding or guiding single record carrier to or from transducer unit
- G11B17/05—Feeding or guiding single record carrier to or from transducer unit specially adapted for discs not contained within cartridges
- G11B17/053—Indirect insertion, i.e. with external loading means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Optical Recording Or Reproduction (AREA)
Abstract
本发明提供了多维冗余纠错的光盘库集群及多维冗余纠错方法。该光盘库集群包括阵列式布置的多台光盘库,多台光盘库包括多台数据光盘库以及至少一台校验光盘库,所有数据光盘库和校验光盘库均具有相同的阵列式布置结构;校验光盘库中每个校验光盘的校验数据由同一光盘库集群中所有数据光盘库中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得;和/或校验光盘匣中每个校验光盘的校验数据由同一数据光盘库中所有数据光盘匣中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得;和/或校验光盘中的校验数据由同一数据光盘匣中所有数据光盘内与该校验数据位置相同或相应的独立数据按照异或运算获得。
Description
技术领域
本发明涉及数据存储技术领域,尤其涉及一种多维冗余纠错的光盘库集群及多维冗余纠错方法。
背景技术
随着数字化进程的日益深入,所需要存储的数据也正在高速增长,由此正带来数据的安全性、所需的能耗和二氧化碳排放量等方面的挑战。为此,人们将数据分为热数据和冷数据并分别处理。冷数据是指那些使用频度低但又必须长久保存的数据。整体数据中绝大部分是冷数据。光盘作为数据存储介质具有保存寿命长、成本低、耗电省等优点,因此其非常适合用于冷数据的存储。
光盘作为数据存储介质,需要读写操作装置将所要记录的数据刻录到光盘上,刻录好的光盘上数据可以在需要的时刻读出。这种光盘的读写操作装置被称为光盘驱动器,简称为光驱。对于大量数据的冷存储,记录数据的光盘介质数量通常远大于光盘操作装置,即光驱的数量。如此,光盘只有在需要读写操作时才会被放入光驱。可以根据需要挑选出正确光盘并将其放入光驱的自动化设备通常被称为光盘库。
一个典型的光盘库由光盘匣仓、光盘匣、机械手和光驱组构成。一个光盘匣内可以容置若干张光盘,光盘匣作为一个整体可以方便地标识、取出和放入。光盘匣仓容置了多个光盘匣,便于光盘的批量调度。通过光盘匣和光盘匣仓,可以将光盘库内的光盘有效地组织起来,同时也为光盘介质提供了防尘避光的长期保存环境。机械手用于自动化光盘的搬运,机械手将所选光盘放入所选光驱的操作称为光盘加载,将操作完毕的光盘从所选光驱中取出放回指定保管位置的操作称为光盘卸载。
当数据的存储规模远超过一台光盘库可以管理的范围时,存储系统需要有一个多台光盘库的集群,此时要考虑的因素是光盘库内光盘介质的可容错纠错性以及光盘库本身的高可用性,光盘库本身的高可用性为在某台光盘库出现故障时,存储系统仍然能够正常提供数据的性能。
发明内容
本发明的一个目的是要提供一种可以实现光盘库之间、光盘匣之间和/或多张光盘之间多维冗余纠错的光盘库集群。
本发明的另一个目的是要提供一种可以实现光盘库之间、光盘匣之间和/或多张光盘之间的多维度冗余纠错的方法。
特别地,本发明提供了一种多维冗余纠错的光盘库集群,所述光盘库集群包括阵列式布置的多台光盘库,所述多台光盘库包括多台数据光盘库以及至少一台校验光盘库,所有所述数据光盘库和所述校验光盘库均具有相同的阵列式布置结构;
所述数据光盘库内的所有光盘为数据光盘,所述校验光盘库内的所有光盘为校验光盘,所述校验光盘库中每个校验光盘的校验数据由同一光盘库集群中所有所述数据光盘库中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得;和/或
所述数据光盘库包括用于容置多张数据光盘的多个相互独立的数据光盘匣,以及用于容置多张校验光盘的至少一个校验光盘匣,所述校验光盘匣中每个校验光盘的校验数据由同一数据光盘库中所有数据光盘匣中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得;和/或
所述数据光盘匣包括多张数据光盘以及至少一张校验光盘,所述校验光盘中的校验数据由同一数据光盘匣中所有数据光盘内与该校验数据位置相同或相应的独立数据按照异或运算获得。
其中,1≤k≤M,1≤i≤C,1≤j≤D,C为每个光盘匣中的所述光盘的数量,D为所述光盘匣仓中的所述光盘匣的数量。
可选地,同一个光盘库中包括多个数据光盘匣和一个校验光盘匣时,该校验光盘匣位于该光盘库的第y位,该校验光盘匣中位置为i的校验光盘的校验数据di,y计算公式为:
其中,di,j表示在一个光盘库中位于第j位的数据光盘匣中第i个数据光盘的独立数据。
可选地,同一个数据光盘匣包括多张数据光盘和一张校验光盘时,该校验光盘位于该数据光盘匣的第z位,该校验光盘中的校验数据dz计算公式为:
其中,di表示位于一个数据光盘匣中第i位的数据光盘内的独立数据。
可选地,所述数据光盘内的独立数据为包含多个二进制数据的独立数据块,所述校验光盘内的校验数据为包含多个二进制数据的校验数据块;
所述校验数据块中任一二进制数据是由所有数据光盘对应的各自独立数据块中与该校验数据块中该二进制数据位置相同的位置处的二进制数据进行异或运算所得;或者
所述校验数据块中任一二进制数据是由所有数据光盘对应的各自独立数据块中对该校验数据块中该二进制数据位置进行循环位移后错位对应的二进制数据进行异或运算所得。
特别地,本发明还提供了一种如前述的光盘库集群的多维冗余纠错方法,包括如下步骤:
从光盘库集群中确定数据缺损的缺损数据光盘库;
从同一光盘库集群中调用校验光盘库;
在位于同一光盘库集群的所述校验光盘库和除所述缺损数据光盘库的所有数据光盘库中,获得与所述缺损数据光盘库位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得所述缺损数据光盘库中对应位置的光盘内的缺损数据;和/或
在一个数据光盘库中确定数据缺损的缺损光盘匣;
从同一数据光盘库中调用校验光盘匣;
在位于同一数据光盘库的所述校验光盘匣和除所述缺损光盘匣的所有数据光盘匣中,获得与所述缺损光盘匣位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得所述缺损光盘匣中对应位置的光盘内的缺损数据;和/或
在一个数据光盘匣中确定数据缺损的缺损光盘;
从同一数据光盘匣中调用校验光盘;
在位于同一数据光盘匣的所述校验光盘和除所述缺损光盘的所有数据光盘中,获得与所述缺损光盘位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得所述缺损光盘中对应位置的缺损数据。
可选地,所述缺损光盘匣位于所述数据光盘库中第g位,所述缺损光盘匣中位置为i的缺损光盘的缺损数据di,g由以下公式计算获得:
其中,di,j表示所述数据光盘库中位于第j位的光盘匣中第i个光盘的数据。
可选地,所述缺损光盘位于所述光盘匣中第f位,所述缺损光盘的缺损数据df由以下公式计算获得:
其中,di表示所述光盘匣中位于第i位的光盘内的数据。
可选地,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中包括Q张数据光盘和一张校验光盘时,所述Q张数据光盘中任意一张数据光盘均包括R个二进制数据组成的独立数据块,表示为:
其中,Di为所述数据光盘匣中第i张数据光盘的独立数据,所述校验光盘包括由R个二进制数据组成的校验数据块:
其中,Dp为在同一数据光盘匣或同一数据光盘库或整个光盘库集群中所述校验光盘的校验数据,所述Q张数据光盘的所有独立数据与所述校验光盘的校验数据一起组成的数据阵列为:
所述数据阵列中同一行数据代表不同光盘在同一位置处的二进制数据,所述数据阵列中同一行仅允许一个位置的二进制数据出现缺损或错误;
可选地,所述数据阵列中每一行均允许有任意位置的数据出现缺损或错误;
可选地,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,所述Q张数据光盘和所述校验光盘中任意一张或多张光盘出现数据缺损时,根据其余数据光盘及校验光盘的同一二进制数据位置的二进制数据对缺损的数据进行异或运算,从而恢复缺损数据。
可选地,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,第X张数据光盘的第Y位二进制数据出现缺损或错误,则所述第X张数据光盘的第Y位二进制数据按照以下公式进行恢复:
其中,1≤X≤Q,1≤Y≤R。
根据本发明方案,该方法包括了光盘库内和光盘库间的冗余纠错算法。用本发明实施例的方法实现的光盘库集群,在应用于大量冷数据存储时,可以显著地提高整体的长期数据安全性和可用性。
本发明实施例在光盘、光驱以及光盘库的不同层面上,实现了冗余纠错。基于本发明实施例的基本方法,在工程实现上还可以有很多灵活的变通和配置。根据不同的可靠性要求,也可以在经济性和冗余度两个因素上做出相应的折衷。例如,在光盘、光盘盒、光盘仓、光盘库的层面上,都可以置入更高的冗余度,如一个光盘盒中设置两张校验光盘,或在光盘库集群中设置两个或更多的校验光盘库等。当然还可以在多个光盘库集群,甚至在不同地理位置之间设置相应的校验维度。
此外,本发明实施例不仅可以允许同一个集群中某一台光盘库、同一光盘库中某一个光盘匣或同一光盘匣中某一张光盘的冗余纠错,还可以允许同一个集群中多台光盘库、同一光盘库中多个光盘匣或同一光盘匣中多张光盘的冗余纠错。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
图1示出了根据本发明第一个实施例的光盘介质异或运算的数据对应关系图;
图2示出了根据本发明第一个实施例的基于光盘库集群的多维冗余纠错方法的示意性流程图。
具体实施方式
本发明实施例提供了一种多维冗余纠错的光盘库集群,该光盘库集群包括阵列式布置的多台光盘库,例如包含有多行多列的矩阵式布置的多台光盘库。每台光盘库均包括光盘匣仓、光盘匣、机械手和光驱组。每个光盘匣内可以容置若干张光盘,光盘匣作为一个整体可以方便地标识、取出和放入。
设有N张数据光盘{di},1≤i≤N,分别被M个光盘库管理,其中,数据光盘是指已写入数据的光盘。为描述简单起见,假设每个光盘库的光盘容量相同,则光盘按光盘库分组为:1≤i≤K,K=N/M,1≤j≤M。其中i是给定光盘库中的光盘编号,j为光盘库编号,N张光盘被分成M等份,每份的数量为K=N/M,K是每个光盘库所管理的光盘数。为简单起见,假设每个光盘库中的光驱数相等且为L个。如此,一个含有大量光盘的光盘库集群可表达为:
光盘库内冗余纠错原理基于标准RAID5、RAID6或纠删码的数学原理。为简单起见,本发明实施例以类似RAID5的计算方法为例,其他的冗余纠错算法也可以应用到本发明实施例中,仍然可以达到相同效果。采用RAID5算法,并不像在线磁盘阵列那样对所需存储的数据进行条带化,更加适合光盘的冷数据存储。这样做的好处是,每张光盘上的数据保持了独立可读性,同时也减少了光盘介质与光驱之间的相互关联性。
为了实现上述冗余纠错,首先提供一光盘库集群,该光盘库集群具有多维冗余纠错的功能。其中,多维是指多个维度,其中维度包括光盘内、光盘匣内、光盘仓内、光盘仓之间、光盘库之间、光盘库集群之间的冗余纠错方法。每个维度的校验单元与该维度的存储单元结构相同。
具体地,设每个维度单元为{Ei},维度单元可以是光盘匣、光盘仓和光盘库等。单元的定义可以是光盘、光盘匣、光盘仓、光盘库、光驱、光盘库机械手、弹出器以及内置打印机等。以下把光盘的各种分组形式称为介质单元,如此单张光盘、光盘匣、光盘匣仓、光盘库都是不同组织形式的介质单元。每种分组形式可以看作一个维度。
如展开可表述为:
以上为简单起见,假设各光盘上的数组是等长为N的。实际情况下,不同光盘上的数组可能为不等长的,对于不同光盘上数组长度不同时可以补“0”向最长的数组对齐,这并不影响以上公式的正确性。
举具体例,当第5张光盘损缺时,其上的数据可以通过下列公式恢复:
即,将剩余的光盘相应位置异或起来,可以得到损缺盘上的数据。
以上方法适用于含有多台光盘库的光盘库集群的多维度冗余纠错方法,这种方法包括了光盘库内和光盘库间的冗余纠错算法。用本发明实施例的方法实现的光盘库集群,在应用于大量冷数据存储时,可以显著地提高整体的长期数据安全性和可用性。
本发明实施例在光盘、光驱以及光盘库的不同层面上,实现了冗余纠错。基于本发明实施例的基本方法,在工程实现上还可以有很多灵活的变通和配置。根据不同的可靠性要求,也可以在经济性和冗余度两个因素上做出相应的折衷。例如,在光盘、光盘盒、光盘仓、光盘库的层面上,都可以置入更高的冗余度,如一个光盘盒中设置两张校验光盘,或在光盘库集群中设置两个或更多的校验光盘库等。当然还可以在多个光盘库集群,甚至在不同地理位置之间设置相应的校验维度。
其中,光盘介质异或运算的数据对应关系如图1所示,将每个介质{Di},1≤i≤N上的数据展开为一个一维二进制数组,在对它们进行异或运算时,其对应关系如图1所示,它们之间的关系可以是原数组中的位置一一对应,也可以是其中一些进行了循环位移后错位对应。重要的是,这些对应关系一旦确定,则应恒定不变。
此外,本发明实施例不仅可以允许同一个集群中某一台光盘库、同一光盘库中某一个光盘匣或同一光盘匣中某一张光盘的冗余纠错,还可以允许同一个集群中多台光盘库、同一光盘库中多个光盘匣或同一光盘匣中多张光盘的冗余纠错,原理如下:
在同一数据光盘匣或同一数据光盘库或整个光盘库集群中包括Q张数据光盘和一张校验光盘时,Q张数据光盘中任意一张数据光盘均包括R个二进制数据组成的独立数据块,表示为:
其中,Di为数据光盘匣中第i张数据光盘的独立数据,校验光盘包括由R个二进制数据组成的校验数据块:
其中,Dp为在同一数据光盘匣或同一数据光盘库或整个光盘库集群中校验光盘的校验数据,Q张数据光盘的所有独立数据与校验光盘的校验数据一起组成的数据阵列为:
数据阵列中同一行数据代表不同光盘在同一位置处的二进制数据,数据阵列中同一行仅允许一个位置的二进制数据出现缺损或错误。数据阵列中每一行均允许有任意位置的数据出现缺损或错误。也就是说,最大允许出错点个数为R个,即以上数据矩阵的R行中每行允许有一个位置的数据出错。
在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,Q张数据光盘和校验光盘中任意一张或多张光盘出现数据缺损时,根据其余数据光盘及校验光盘的同一二进制数据位置的二进制数据对缺损的数据进行异或运算,从而恢复缺损数据。
具体地,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,第X张数据光盘的第Y位二进制数据出现缺损或错误,则第X张数据光盘的第Y位二进制数据按照以下公式进行恢复:
其中,1≤X≤Q,1≤Y≤R。
因此,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,可以是所有光盘都出现数据缺损或错误,只要满足如前述所述数据阵列中同一行仅允许一个位置的二进制数据出现缺损或错误即可。
以下以利用上述原理进行实施时的几个典型的例子进行详细说明:
实施例一:
对于一个由多台光盘库组成的大型冷数据存储集群而言,要解决光盘库之间的冗余纠错问题,即当集群中一台或多台光盘库出现故障时,例如机械手损坏时,如何能保证系统能否提供全部数据中的任何一部分。因此,该实施例中,是在一个光盘库集群中实现光盘库之间的冗余纠错。
该实施例中,该光盘库集群中包括阵列式布置的多台光盘库,该多台光盘库包括多台数据光盘库以及一台校验光盘库。所有数据光盘库和校验光盘库均具有相同的阵列式布置结构,即均具有按照相同结构类型布置的光盘匣、光盘、光驱以及机械手。
以下为了对数据光盘库中的所有光盘与校验光盘库中的所有光盘进行区别,将该数据光盘库内的所有光盘称为数据光盘,校验光盘库内的所有光盘称为校验光盘。并且,将数据光盘内的二进制数据称为独立数据,将校验光盘内二进制数据称为校验数据。其中,该校验光盘库中每个校验光盘的校验数据由同一光盘库集群中所有数据光盘库中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得。
如果将第M台光盘库设置为校验光盘库,则该光盘库集群的总有效光盘容量,即用于存储数据的光盘数量为(C-1)×(D-1)×(M-1)。则该光盘库集群可以表达为:
其中,1≤k≤M-1,1≤i≤C,1≤j≤D,C为每个光盘匣中的光盘的数量,D为光盘匣仓中的光盘匣的数量。
图2示出了根据本发明第一个实施例的基于光盘库集群的多维冗余纠错方法的示意性流程图。如图2所示,该多维冗余纠错方法,包括:
步骤S100,从光盘库集群中确定数据缺损的缺损数据光盘库;
步骤S200,从同一光盘库集群中调用校验光盘库;
步骤S300,在位于同一光盘库集群的校验光盘库和除缺损数据光盘库的所有数据光盘库中,获得与缺损数据光盘库位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得缺损数据光盘库中对应位置的光盘内的缺损数据。
具体地,如果M个光盘库(包括校验光盘库)中有一个缺损,其中的数据可以用剩余的M-1个光盘库中相应位置的光盘进行异或运算得出。根据这一原理,系统既可以把整个缺损的光盘库中的数据恢复到一个新的光盘库中,也可以在系统中缺损光盘库没有修好之前,对其中所需调用的光盘进行恢复。恢复的方法是将剩余M-1个光盘库中相应位置的光盘进行异或得出,即缺损光盘库位于光盘库集群第h位,且处于缺损光盘库中位置(i,j)的光盘的数据由以下公式计算获得:其中,表示所述光盘库集群中位于第k位的光盘库中第j个光盘匣第i个光盘的数据。
上述方案可以在集群中一台或多台光盘库出现故障时如机械手损坏时,保证系统能提供全部数据中的任何一部分。
实施例二:
在该实施例中,是要在光盘库内实现冗余纠错。数据光盘库包括用于容置多张数据光盘的多个相互独立的数据光盘匣,以及用于容置多张校验光盘的至少一个校验光盘匣,所述校验光盘匣中每个校验光盘的校验数据由同一数据光盘库中所有数据光盘匣中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得。并且,数据光盘匣包括多张数据光盘以及至少一张校验光盘,该校验光盘中的校验数据由同一数据光盘匣中所有数据光盘内与该校验数据位置相同或相应的独立数据按照异或运算获得。
具体地,在一个光盘库中容置有一个光盘匣仓,每一个光盘匣中容置了C张光盘,每个光盘匣仓中容置了D个光盘匣,因此,该光盘库的容量为C×D,设定光盘冗余度为1,即每个光盘匣仓中含一个校验光盘匣,每个光盘匣中含有一张校验光盘。D个光盘匣中的任一个光盘匣表示为:
Disx为光盘库中第x个光盘匣,dij为光盘库中的第j个光盘匣中的第i个光盘。如此可形成一个二维冗余介质矩阵:
设以上二维冗余介质矩阵中最后一行和最后一列,即每个光盘匣中的最后一张{dC1,dC2,…,dCD}和光盘匣仓中的最后一个光盘匣{d1D,d2D,…,dCD}为校验介质,则这台光盘库的总有效容量为(C-1)×(D-1),用于冗余校验的光盘数为C+D-1。在上述二维冗余介质矩阵中,在行和列各设置了一个冗余度为1的校验位置,因此,这种设置下的光盘库中的光盘允许缺损的程度可以描述为:“每个光盘匣中可以容许有一张光盘缺损,且每个光盘匣仓中可以容许有一个光盘匣缺损”,或者,也可以描述为:“每个光盘匣中可以最多坏一张,每个光盘匣仓中允许有一个光盘匣中的光盘可以任意坏”。
基于该光盘库集群,其中多维冗余纠错方法包括如下步骤:在一个数据光盘库中确定数据缺损的缺损光盘匣;从同一数据光盘库中调用校验光盘匣;在位于同一数据光盘库的校验光盘匣和除缺损光盘匣的所有数据光盘匣中,获得与缺损光盘匣位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得缺损光盘匣中对应位置的光盘内的缺损数据。多维冗余纠错方法还包括如下步骤:在一个数据光盘匣中确定数据缺损的缺损光盘;从同一数据光盘匣中调用校验光盘;在位于同一数据光盘匣的校验光盘和除缺损光盘的所有数据光盘中,获得与缺损光盘位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得缺损光盘中对应位置的缺损数据。
具体地,若缺损光盘匣位于数据光盘库中第g位,则缺损光盘匣中位置为i的缺损光盘的缺损数据di,g由以下公式计算获得:
其中,di,j表示所述数据光盘库中位于第j位的光盘匣中第i个光盘的数据。
若缺损光盘位于光盘匣中第f位,则缺损光盘的缺损数据df由以下公式计算获得:
其中,di表示光盘匣中位于第i位的光盘内的数据。
实施例三:
该实施例与实施例二的区别在于,一个光盘库中容置有E个光盘匣仓,该光盘库的容量为C×D×E,在该E个光盘匣仓中,最后一个为校验光盘匣仓,则这台光盘库的总有效容量为(C-1)×(D-1)×(E-1)。有E个光盘匣仓,冗余维度比实施例二中的一个光盘匣仓的情况多了一个维度。
实施例四:
该实施例中,可以在光盘匣内实现冗余纠错。该实施例与实施例二的区别在于,每个光盘匣仓中含有一个校验光盘匣,每个光盘匣中全部为数据光盘。
设二维冗余介质矩阵与实施例二相同,该二维冗余介质矩阵中最后一列,即光盘匣仓中的最后一个光盘匣{d1D,d2D,…,dCD}为校验介质,则这台光盘库的总有效容量为C×(D-1),用于冗余校验的光盘数为C。
若缺损光盘位于光盘匣中第f位,则缺损光盘的缺损数据df由以下公式计算获得:
其中,di表示光盘匣中位于第i位的光盘内的数据。
以上的实施例当然还可以有很多种变通的设置,总体上是一种冗余介质开销的综合考虑。但总体上讲,本发明方案可以有效地提高一个光盘库内的介质安全性与可用性。由于每个光盘库内设有L个独立光驱{ri},1≤i≤L,因此,出现若干光驱损坏时,也不会影响光盘库内数据的可提供性。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
Claims (10)
1.一种多维冗余纠错的光盘库集群,其特征在于,所述光盘库集群包括阵列式布置的多台光盘库,所述多台光盘库包括多台数据光盘库以及至少一台校验光盘库,所有所述数据光盘库和所述校验光盘库均具有相同的阵列式布置结构;
所述数据光盘库内的所有光盘为数据光盘,所述校验光盘库内的所有光盘为校验光盘,所述校验光盘库中每个校验光盘的校验数据由同一光盘库集群中所有所述数据光盘库中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得;和/或
所述数据光盘库包括用于容置多张数据光盘的多个相互独立的数据光盘匣,以及用于容置多张校验光盘的至少一个校验光盘匣,所述校验光盘匣中每个校验光盘的校验数据由同一数据光盘库中所有数据光盘匣中与该校验光盘位置相同或相应的数据光盘内的独立数据按照异或运算获得;和/或
所述数据光盘匣包括多张数据光盘以及至少一张校验光盘,所述校验光盘中的校验数据由同一数据光盘匣中所有数据光盘内与该校验数据位置相同或相应的独立数据按照异或运算获得。
5.根据权利要求1-4中任一项所述的光盘库集群,其特征在于,所述数据光盘内的独立数据为包含多个二进制数据的独立数据块,所述校验光盘内的校验数据为包含多个二进制数据的校验数据块;
所述校验数据块中任一二进制数据是由所有数据光盘对应的各自独立数据块中与该校验数据块中该二进制数据位置相同的位置处的二进制数据进行异或运算所得;或者
所述校验数据块中任一二进制数据是由所有数据光盘对应的各自独立数据块中对该校验数据块中该二进制数据位置进行循环位移后错位对应的二进制数据进行异或运算所得。
6.一种如权利要求1-5中任一项所述的光盘库集群的多维冗余纠错方法,其特征在于,包括如下步骤:
从光盘库集群中确定数据缺损的缺损数据光盘库;
从同一光盘库集群中调用校验光盘库;
在位于同一光盘库集群的所述校验光盘库和除所述缺损数据光盘库的所有数据光盘库中,获得与所述缺损数据光盘库位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得所述缺损数据光盘库中对应位置的光盘内的缺损数据;和/或
在一个数据光盘库中确定数据缺损的缺损光盘匣;
从同一数据光盘库中调用校验光盘匣;
在位于同一数据光盘库的所述校验光盘匣和除所述缺损光盘匣的所有数据光盘匣中,获得与所述缺损光盘匣位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得所述缺损光盘匣中对应位置的光盘内的缺损数据;和/或
在一个数据光盘匣中确定数据缺损的缺损光盘;
从同一数据光盘匣中调用校验光盘;
在位于同一数据光盘匣的所述校验光盘和除所述缺损光盘的所有数据光盘中,获得与所述缺损光盘位置相同或相应的所有光盘内的所有数据,并将该所有数据按照异或运算获得所述缺损光盘中对应位置的缺损数据。
10.根据权利要求6-9中任一项所述的多维冗余纠错方法,其特征在于,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中包括Q张数据光盘和一张校验光盘时,所述Q张数据光盘中任意一张数据光盘均包括R个二进制数据组成的独立数据块,表示为:
其中,Di为所述数据光盘匣中第i张数据光盘的独立数据,所述校验光盘包括由R个二进制数据组成的校验数据块:
其中,Dp为在同一数据光盘匣或同一数据光盘库或整个光盘库集群中所述校验光盘的校验数据,所述Q张数据光盘的所有独立数据与所述校验光盘的校验数据一起组成的数据阵列为:
所述数据阵列中同一行数据代表不同光盘在同一位置处的二进制数据,所述数据阵列中同一行仅允许一个位置的二进制数据出现缺损或错误;
可选地,所述数据阵列中每一行均允许有任意位置的数据出现缺损或错误;
可选地,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,所述Q张数据光盘和所述校验光盘中任意一张或多张光盘出现数据缺损时,根据其余数据光盘及校验光盘的同一二进制数据位置的二进制数据对缺损的数据进行异或运算,从而恢复缺损数据。
可选地,在同一数据光盘匣或同一数据光盘库或整个光盘库集群中,第X张数据光盘的第Y位二进制数据出现缺损或错误,则所述第X张数据光盘的第Y位二进制数据按照以下公式进行恢复:
其中,1≤X≤Q,1≤Y≤R。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010323375.7A CN113535072A (zh) | 2020-04-22 | 2020-04-22 | 一种多维冗余纠错的光盘库集群及多维冗余纠错方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010323375.7A CN113535072A (zh) | 2020-04-22 | 2020-04-22 | 一种多维冗余纠错的光盘库集群及多维冗余纠错方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113535072A true CN113535072A (zh) | 2021-10-22 |
Family
ID=78124106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010323375.7A Pending CN113535072A (zh) | 2020-04-22 | 2020-04-22 | 一种多维冗余纠错的光盘库集群及多维冗余纠错方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535072A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1228582A (zh) * | 1999-03-12 | 1999-09-15 | 清华大学 | 光盘阵列塔结构 |
CN103971711A (zh) * | 2013-01-30 | 2014-08-06 | 日立乐金资料储存股份有限公司 | 记录再现装置和光盘库装置 |
CN110727541A (zh) * | 2019-09-02 | 2020-01-24 | 广东紫晶信息存储技术股份有限公司 | 一种光盘分块存储校验方法及系统 |
-
2020
- 2020-04-22 CN CN202010323375.7A patent/CN113535072A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1228582A (zh) * | 1999-03-12 | 1999-09-15 | 清华大学 | 光盘阵列塔结构 |
CN103971711A (zh) * | 2013-01-30 | 2014-08-06 | 日立乐金资料储存股份有限公司 | 记录再现装置和光盘库装置 |
CN110727541A (zh) * | 2019-09-02 | 2020-01-24 | 广东紫晶信息存储技术股份有限公司 | 一种光盘分块存储校验方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2769435B2 (ja) | 補助データ記憶システム及びデータ・ファイルを記憶及び回復させる方法 | |
US7546515B2 (en) | Method of storing downloadable firmware on bulk media | |
US5471478A (en) | Flash EEPROM array data and header file structure | |
US7536627B2 (en) | Storing downloadable firmware on bulk media | |
US9213604B2 (en) | Semiconductor memory controlling device which writes data and error correction codes into different semiconductor storage drives | |
US6529997B1 (en) | Apparatus and method for writing and reading data to and from a virtual volume of redundant storage devices | |
CN102708019B (zh) | 一种硬盘数据恢复方法、装置及系统 | |
US8725944B2 (en) | Implementing raid in solid state memory | |
US7149948B2 (en) | Manufacturing test for a fault tolerant magnetoresistive solid-state storage device | |
EP0466296B1 (en) | A data recovery channel in a fault tolerant disk drive array and a method of correcting errors therein | |
US20170293527A1 (en) | Data recovery in memory having multiple failure modes | |
US20130036340A1 (en) | Method for improving performance in raid systems | |
GB2404830A (en) | Data with multiple sets of error correction codes | |
US20130166945A1 (en) | Storage device | |
US8402213B2 (en) | Data redundancy using two distributed mirror sets | |
US7653829B2 (en) | Method of data placement and control in block-divided distributed parity disk array | |
US20060259812A1 (en) | Data protection method | |
US8924814B2 (en) | Write management using partial parity codes | |
CN113535072A (zh) | 一种多维冗余纠错的光盘库集群及多维冗余纠错方法 | |
CN105027084A (zh) | 在移动通信系统中控制存储器的装置和方法 | |
CN110727541A (zh) | 一种光盘分块存储校验方法及系统 | |
CN102385544B (zh) | 一种磁盘重建方法和装置 | |
US9262264B2 (en) | Error correction code seeding | |
CN113535070B (zh) | 一种个人数据中心及数据存储修复方法 | |
US11907047B2 (en) | Data storage device and error tolerance selecting method thereof |
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 |