CN1194298C - 盘存储装置的数据更新方法和盘存储控制装置 - Google Patents

盘存储装置的数据更新方法和盘存储控制装置 Download PDF

Info

Publication number
CN1194298C
CN1194298C CNB011255730A CN01125573A CN1194298C CN 1194298 C CN1194298 C CN 1194298C CN B011255730 A CNB011255730 A CN B011255730A CN 01125573 A CN01125573 A CN 01125573A CN 1194298 C CN1194298 C CN 1194298C
Authority
CN
China
Prior art keywords
data
logical
block
logical address
write
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.)
Expired - Fee Related
Application number
CNB011255730A
Other languages
English (en)
Other versions
CN1347031A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Publication of CN1347031A publication Critical patent/CN1347031A/zh
Application granted granted Critical
Publication of CN1194298C publication Critical patent/CN1194298C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID 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/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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, i.e. distributed RAID systems with parity
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

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)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出一种原理上不需要间接变换映象、便宜且高速的盘存储装置的数据更新方法,并构成一种实现该方法的盘存储控制系统。在由N台盘装置构成的盘存储装置中,备有具有与N×K(整数)个逻辑块相当的容量的写入缓冲器,把应更新数据的逻辑块存储在该写入缓冲器中,控制装置1使该逻辑块的更新延迟到该已存储的逻辑块达到N×K-1个为止,把N×K-1个逻辑块并加上逻辑地址标记块的N×K个逻辑块依次连续写入N台盘装置上的空闲区域中。

Description

盘存储装置的数据更新方法和盘存储控制装置
本发明申请是申请日为1998年8月7日、申请号为98116228.2的同名专利申请的一个分案申请。
技术领域
本发明涉及使用了RAID(Redundant Array of Inexpensive Disk廉价盘的冗余阵列)等多台盘存储装置的盘阵列存储装置,特别是涉及对盘阵列存储装置进行数据存储和读出的方法及其所用的控制装置。
背景技术
在美国专利第5124987号、特开平6-214720和特开平6-266510号所公开的RAID方式的存储装置中,作为向存储装置高速写入的方法,提出了一种改写数据的方法,即,不是改写旧数据区,而是将更新的数据整理后写入盘装置内的预先准备好的另外的空区域中,然后,在其后的空闲时间内再改写旧数据区。
使用图18简单地说明上述现有的方法。在图中,考虑更新已存储在逻辑块地址(以下仅称为逻辑地址)L6、L4、L2、L12、L7、L11内的数据块的情况。这些逻辑块地址L6、L4、L2、L12、L7、L11内的旧数据存在于3个盘装置181、182、183内的物理块地址(以下仅称为物理地址)P6、P4、P2、P12、P7、P11中。首先,应更新的新数据块L6数据、L4数据、L2数据、L12数据、L7数据、L11数据通常暂时存储在由非易失性存储器构成的写入缓冲存储器184中。这些数据块不是直接去替换存储了要更新的旧数据的物理块地址P6、P4、P2、P12、P7、P11的内容、即数据,而是保持旧数据不变,将该更新的数据块整理后写入72、173内的预先准备好的另外的空区域、即物理地址P51、P52、P53、P54、P55、P56中。该写入操作是向3个盘装置181、182、183内的连续物理地址P51-P52、P53-P54、P55-P56写入的,所以,与直接进行替换时需要6次写入操作相比,减少到实际上只要3次写入操作,写入性能大大提高。
另一方面,在这种现有的盘阵列存储装置中,设有表示数据块与存储的逻辑地址和物理地址的对应关系的表、即间接映象(map)。在数据更新时,如上所述,逻辑地址L6、L4、L2、L12、L7、L11内的最新数据实际上是存在于盘装置内的物理地址P51、P52、P53、P54、P55、P56中,所以,改写间接映象的内容使它正确地指向盘上的位置。即,例如,逻辑地址L6内的数据块本来必须在盘装置181内的物理地址P6中,但实际上存储在物理地址P51内,所以,将与间接映象175内的逻辑地址L6对应的物理地址P6改写成P51。以下,同样分别将与间接映象185内的逻辑地址L4、L2、L12、L7、L11对应的物理地址改写成P52、P53、P54、P55、P56。
此外,因为在将存储在盘阵列存储装置中的数据读出时,是求出与间接映象185所指定的逻辑地址对应的存储了最新数据块的物理地址后再读出的,所以没有将旧数据读出的危险。
再有,在图18所示的例子中,为使说明简单起见,作为存储的数据块,对1台盘装置只写入2个块的数据,但实际上要写入几十个数据块。
在上述现有的技术中,因为是通过间接映象去管理最新数据的位置信息,所以,存在当间接映象因故障或误操作而使其数据丢失时盘装置内的全部数据便丢失的所谓数据安全性问题。此外,因为必须对全部逻辑块准备间接映象,而且当发生电源故障时还要保持间接映象,所以必需要大容量的非易失性存储器,因而存在间接映象非常贵的问题。
发明内容
本发明是为了解决上述问题而提出的,其目的在于提供一种原理上不需要间接映象、便宜而快速的盘存储装置的数据更新方法以及盘存储控制系统。
本发明的一种盘存储装置的数据更新方法,该盘存储装置具有N+1个盘装置,其中N是一个不小于2的正整数,所述方法包括以下步骤:
在一个具有N×K个逻辑块的容量的写入缓冲存储器中累加要更新的逻辑块数据,直到所述逻辑块个数达到N×K-2块为止,其中K是表示块数量的一个整数;
生成两个逻辑地址标记块,该逻辑地址标记块包括用于所述N×K-2个逻辑块和存储在一个时间印记存储器中的用于将剩余的两个块存储在所述写入缓冲存储器中的时间印记的逻辑地址;
采用异逻辑操作生成K个奇偶块,该奇偶块对应于K个条形数据,该条形数据包括带有附加到N×K-2个逻辑块的所述两个逻辑地址标记块的N×K-2个数据逻辑块;和
将N×K-2个逻辑块和带有两个逻辑地址标记块的K个奇偶块作为一个条形顺序地写入到一个空区域,该空区域不同于N+1个盘装置上的存储要更新的数据的区域,以便使所述两个逻辑地址标记块存储在不同的盘装置中。
本发明的一种盘存储控制装置,包括:
一个盘存储装置,其中包括N个盘装置,其中N是不小于2的一个正整数;
一个写入缓冲器,具有等于N×K-1个逻辑块的容量,其中K是表示块的数量的一个整数;和
一个顺序写入控制单元;
所述顺序写入控制单元还包括:
一个第一装置,用于累加在此写入缓冲器中要更新的数据的逻辑块;
一个第二装置,用于延迟所述逻辑块的更新,直到累加的逻辑块达到一个选择的数量为止;
一个第三装置,用于产生一个包括在所述写入缓冲器中累加的逻辑块的逻辑地址的逻辑地址标记块;和
一个第四装置,用于从带有附加到选择数量的逻辑块的逻辑地址标记块的N×K-1个数据逻辑块产生K个奇偶块,并且将带有附加到此数据逻辑块的奇偶块的N×K个逻辑块连续地写入到一个空区域中,该空区域与N个盘装置上的保存要更新的数据的一个区域相分隔。
通过采用上述结构,原则上不需要间接映象,可以构筑一种便宜且高速的盘存储装置以及盘存储控制系统。
附图说明
图1是表示本发明的实施例的框图。
图2是为显示本发明的实施例中写入缓冲器和缓冲器管理信息的关系所引用的图。
图3是表示本发明的实施例中盘装置的空闲区存储的内容的图。
图4是为显示从主机写入1个块的数据的写入顺序所引用的图。
图5是表示图4的例子中条ST1、ST2的逻辑地址标记TG1/TG2的内容的图。
图6是表示将条ST3/ST4统一成1个条ST5的例子的图。
图7是表示在进行条的统一时从逻辑地址标记TG3/TG4作成逻辑地址标记TG5的例子的图。
图8是表示本发明的实施例中使用的变换映象的结构例的图。
图9是用于说明系统启动时变换映象的作成方法的流程图。
图10是表示将根据条分散配置了4台存储逻辑地址标记的盘装置的例子的图。
图11是表示在段分割中的盘装置的存储区域的分配的图。
图12是表示段管理信息的输入项目结构的图。
图13是表示连续地存储逻辑地址标记的专用标记区的内容的图。
图14是表示应用本发明而构成的基于RAID5的盘装置的实施例的框图。
图15是表示图13所示的实施例的工作原理的图。
图16是表示控制成将相同的逻辑地址标记写入2个盘装置的例子的图。
图17是表示为了高速地作成变换映象而分配使用专用标记区的情况的例子的图。
图18是表示现有技术中实现数据更新方法的系统结构的图。
具体实施方式
图1使用本发明构成的盘存储装置的原理结构图。本发明的盘存储装控制系统由控制装置1、盘装置2、易失性存储器3和非易失性存储器4构成。盘装置2由多台盘存储装置构成,但在该实施例中为说明简单起见,以由4台21、22、23、24构成的盘装置为例进行说明。易失性存储器3中设有存储写入的时间顺序的时间印记区31和间接映象存储区32。非易失性存储器4中设有将写入盘装置2的数据作成记录表的结构并保存的写入缓冲区41和保存写入缓冲区41中的空闲区域及已保存的写入数据的逻辑地址的信息的缓冲器管理表42。控制装置1根据主机5来的命令管理这些时间印记区31、写入缓冲区41和缓冲器管理表42,控制向盘装置2的写入。
图2示出分配给非易失性存储器4的写入缓冲区41和缓冲器管理表42的关系。控制装置1不是直接将与外部连接的主机所要求的写入数据写入盘装置2,而是将它们以块为单位分割后再顺序(以记录表的形式)存储到写入缓冲区41中。在此,缓冲器管理表41形成由多个输入项目构成的表格,在这些各输入项目中,与缓冲区41内的各块位置B0、B1、…B15对应地保存应写入的各数据块的从主机看到的逻辑地址。在缓冲器管理表42内的各输入项目中还设立标志“F”,表示该输入项目已分配了数据,对没有分配数据的输入项目设立标志“U”。
在图2所示的例子中示出,写入数据存储在写入缓冲区41内的到块位置B9为目的区域中,B0、B1、…B9的逻辑地址是LA134、LA199、…LA678。
此外,以称之为条单元的存储区为单位(其长度接近于该盘装置的1根个信的(track)长度即可),对于盘装置2的各盘存储装置21~24进行数据的写入,该数据的长度相当于块长度的整数(K)倍、即K个块的长度。而且,与各盘存储装置21~24的物理位置对应的条单元整体上作为1个条形区(ST),也以相同的时序进行写入。
此外,盘装置2向主机2呈现的存储容量比构成它的多台盘装置21~24加在一起的实际存储容量要小,即,当主机5最初询问存储容量时,作为回答返回的是较小的容量。因此,除了从主机5可以进行逻辑读写的存储区域之外,还可确保多余的存储区域。即空闲区域。
进而,时间印记31是当从主机5来的写入数据实际上已写入盘装置2时所附加的信息,是为了判定向盘装置2写入数据的顺序而使用的。因此,每当写入缓冲器41的数据写入盘装置2时,时间印记31就递增。
下面,参照图2~图8详细说明图1所示的本发明实施例的操作。
首先,说明写入操作。控制装置1从主机5接受应写入的数据及其逻辑地址,如图2所示,将数据以块为单位分割,按顺序连续地存储到非易失性存储器4的写入缓冲区41的空闲区域中。再有,在图2中,依次连续地写入写入缓冲区41的相当于由B0、B1、…B15形成的15个块长的空闲区内。
此外,将接受的逻辑地址变换成每个块的地址,并存储到与缓冲器管理表42对应的输入项目B0、B1、…B15中。再有当对已存储写入缓冲器41的数据进行更新时,不是依次存储到写入缓冲器41的空闲区,而是直接改变写入缓冲器41的旧数据。
在从主机5写入的数据积存于比盘装置2的1个条(ST)的区域少1个块、即(4K-1)块写入缓冲器41时,控制装置1将这些数据写入盘装置2。在图2中,是在积存于K=4、即15个块写入缓冲器41时进行对于盘装置2的写入。这时,作为最后的写入块,根据存储在缓冲器管理表42内的写入管理表中的各个块的逻辑地址和易失性存储器3上的时间印记31作成图3所示那样的逻辑地址标记块LA-TAG。事先在该逻辑地址标记块的地址数据和数据块之间设一一对应的关系,就可以知道各数据块的逻辑地址。
然后,如图3所示,将附加了该逻辑地址标记块的1个条的数据整理后同时写入盘装置21~24的空闲区。在图3中,盘装置21~24的1个条(ST)的空闲区由4个单元条D1~D4表示,图3示出了写入各单元条D1~D4区域内的4个数据块的逻辑地址。再有,图1的时间印记31的值在写入结束时加1。这样,将很多零碎的盘写入操作归纳成1次写入,所以大大地提高了盘的写入性能。
其次,说明数据块的重新装入处理。作为本发明的盘写入方法,不是直接改写旧的数据区,而是将更新的数据存起来,归纳后写入盘装置2的事先准备好的另外的空闲区域中。在这样的盘写入方法中,必须始终存在用于将存储在盘装置2内的数据归纳后再写入的空闲区。因此,可以在没有进行从主机5来的盘的存取的空闲时间内把已写入其它区域而变成无效的数据集中起来,作成空闲区。将该处理称为重新装入处理该重新装入处理由判定无效块和条统一两个步骤构成。
作为判定无效块的例子,考虑有按图4所示的顺序从主机5写入1个块长的数据的情况。图中L××表示从主机送过来的逻辑地址,S××表示写入顺序。在本发明的实施例中,因写入缓冲器41保存有15个块的数据,将最初S1-S15写入的数据归纳成1个条(ST1),附加时间印记TS1后写入盘装置的空闲区。同样,S16~S30的写入数据作为另外的条(ST2)并附加时间印记TS2后写入另外的空闲区。再有,因每写入1次时间印记31加1,故存在TS1<TS2的关系。
这里,由图可知,逻辑地址L9、L18的数据在时间印记为TS1的条中作为S5、S2的块、在时间印记为TS2的条中作为S19、S21的块重复存在。即,存在2个应写入同一逻辑地址L9、L18的数据。但是,若考虑写入数据块的顺序,后来写入的S19、S21的数据块是有效的,因此,S5、S2的数据必须判定为无效。
然而,在此为方便而使用的写入顺序S××在实际的盘上没有记录下来。因此,使用附加在各个条中的逻辑地址标记进行判定。在图4的例子中,2个条ST1、ST2的逻辑地址标记TG1、TG2的内容如图5所示。即,逻辑地址TG1、TG2将各块的逻辑地址存储在与写入到写入缓冲器41的15个块B0、B1、…B15对应的存储区中,在第16号存储区内分别写入条ST1、ST2的每一个被写入时的时间印记TS1、TS2。
由图可知,2个逻辑地址标记TG1、TG2包含相同的逻辑地址L9、L18的数据,条ST1的块B5、B2和条ST2的块B4、B6中的某一个的数据为无效数据。进而,若将逻辑地址标记TG1的时间印记TS1与逻辑地址标记TG2的时间印记TS2进行比较,根据TS1<TS2的关系可以判定条ST1的块B5、B2为无效。如上面说明的那样,通过调查盘装置2的逻辑地址就可以找出无效的数据块。
图6是表示条统一的例子的图,示出了将2个条ST3、ST4统一成1个条ST5的情况。在该图中,对于条ST3,假定B2、B7、B8、B12、B13的5个块有效。其余10个块无效(画阴影线)。同样,对于条ST4,假定B18、B19、B20、B21、B22、B24、B25、B27、B29的9个块有效,其余6个块无效(画阴影线)。因此,在2个条ST3、ST4中,有效块加起来只有14块,通过只将这2个条ST3、ST4的有效块取出来统一变成1个条ST5,结果作成相当于1个条的空闲区。
条统一的具体方法是,从易失性存储器3读出图6所示的2个条ST3、ST4,只将这2个条ST3、ST4的有效块取出并将它们连续地转送到写入缓冲器41中。与此相应,逻辑地址标记也如图7所示从TG3、TG4转移到只与有效块的逻辑地址对应的位置上,作成新的逻辑地址标记TG5,将这时的时间印记更新为ST5。
在该例中,因只有14个有效块,故进而等待从主机5供给1个写入块,使之凑成1个条,归纳后写入盘装置2的空闲区。这时,虽然有效地利用了盘区域,但因为要等待从主机5供给写入块,故存在使向盘进行存取集中在一起的危险。因此,也可在存取的空隙时间按原有的空状态写入最后的数据块。这时,由于通过在与逻辑地址标记TG5的最后数据块对应的逻辑地址上输入-1等NULL地址来表示数据没有输入,所以不成为问题。
其次,说明这样写入的数据块的读出操作。通过对盘装置2的全部条的逻辑地址标记进行重新装入处理的无效块判定,可以检测出对全部逻辑地址有效的块的物理位置。因此,从原理上讲,通过在从主机5接受读出块的逻辑地址时进行全部条的检查,可以找出应读出的物理块。但是,该方法在块读出时要耗费很长的时间,所以不实用。
因此,只在系统启动时进行全部条的逻辑地址标记的调查,在图1所示的易失性存储器3上根据逻辑地址作成向物理地址变换的映象32。使用该变换映象32对主机5来的读出请求进行向有效块的存取。因此,可不对每一个主机5来的读出请求都进行地址标记的调查,不会大大降低读出时的性能。此外,该变换映象32无论何时都能通过调查全部条来再生,所以,不需要象以往的间接映象那样为了防备电源故障而必须将其存储在非易失性存储器中。
在此,使用图8说明变换映象32。如图所示,变换映象32以表格的形式保存存储了相对各逻辑地址L0~Ln的块的条号ST#、该条内的块号BLK3及其时间印记TS#。因此,若给出逻辑地址L0~Ln,通过检索该表就可以简单地从ST#和BLK#求出实际的物理地址。
此外,关于系统启动时变换映象的作成。如图9的流程图所示那样,依次读出存储在盘装置2中的条ST1、ST2、ST3、…的逻辑地址标记TG1、TG2、TG3、…(步骤1)。将这样读出的逻辑地址标记TG1、TG2、TG3、…内的各时间印记TS1、TS2、TS3、…取出(步骤2)。进而,将读出的各逻辑地址档记TG1、TG2、TG3、…内的各逻辑地址LA××依次取出(步骤3)。当将与取出的逻辑地址LAn相同的逻辑地址LAn登录在变换映象32内时,将登录在变换映象32内的逻辑地址LAn的时间印记TSn与取出的逻辑地址LAn的时间印记TSm进行比较(步骤4)。作为该比较的结果,当取出的逻辑地址LAn的时间印记TSi比登录在变换映象32内的逻辑地址LAn的时间印记TSj新、即TSi大于TSj时,将存储了已作为登录在对于逻辑地址LAn的变换映象32内的条号ST#取出的逻辑地址LAn的盘装置2的条号ST#存储起来,此外,还将存储了该逻辑地址LAn的条ST#内的数据块的位置BLK#存储起来(步骤5)。进而,将已作为对于变换映象32内的逻辑地址LAn的时间印记TS#取出的、对于逻辑地址LAn的时间印记TS#存储起来(步骤6)。作为上述步骤4的比较结果,当取出的逻辑地址LAn的时间印记TSi比登录在变换映象32内的逻辑地址LAn的时间印记TSj旧、即TSi小于TSj时,使对于登录在变换映象32内的逻辑地址LAn的条ST#、数据块的位置BLK#和时间印记TS#的内容维持不变,针对已读出的逻辑地址标记内的所有的逻辑地址,调查是否执行了同样的处理(步骤7)。在对全部逻辑地址未执行同样的处理的情况下,返回步骤3,重复执行直到步骤8的处理在对已读出的逻辑地址标记内的所有的逻辑地址已完成同样的处理的情况下,则接着针对存储在盘装置2上的所有的逻辑地址标记TG1、TG2、TG3、…,调查是否已执行上述处理(步骤8)。若未完成同样的处理则返回步骤3,重复执行直到步骤7的处理。若已完成同样的处理,则使对于该时刻残留的逻辑地址的条ST#、数据块的位置BLK#和时间印记TS#的内容变成变换映象32的登录内容(步骤9)。
即,对于已取出的逻辑地址标记内的全部逻辑地址,只有当逻辑地址标记的时间印记比变换映象32内表格的时间印记大时,才将与该条号对应的块号登录在表格中。若对全部条进行该调查,则可以作成只指示有效块的变换映象。进而,每当向盘装置2写入条时,通过对该逻辑地址标记也进行同样的处理,只将始终有效的块登录在该变换映象32上。此外,通过在盘存取的空隙时间内将各条的逻辑地址标记与变换映象进行比较检查,即使因存储器故障使该变换映象出现不正确的值。也能够检测出来并加以改正。
如上所述,作成变换映象的主要的处理是逻辑地址标记的检查。所以,在象大容量盘装置那样逻辑地址标记数多时,作成电源故障和系统启动时的变换映象需要很长时间。特别是,如图2所示,当逻辑地址标记块集中在1台盘装置24上时,在系统启动时存取操作集中在该盘上进行,不能平行地进行逻辑地址标记的调查。因此,如图10所示,通过将根据条来存储逻辑地址标记的盘装置分散成4台平行地进行逻辑地址标记的调查,可以使作成该映象的时间缩短到1/4。
此外,通过将盘装置2的存储区域分割成多个段进行管理,可以削减作成变换映象所必需的逻辑地址标记的检查个数。图11示出段分割方式下盘装置的存储区域的结构。如图所示,盘装置的存储区域以条为单位被分割成段管理信息部分(阴影部分)和4个段。在此,所谓段是指写入缓冲器数据的一并写入和重新装入处理的盘写入集中在某一时间进行的单位区域。例如,控制空闲区的选择,使得在段2是盘写入的对象的期间内不向段1、3、4进行写入。
此外,当某段的空闲区少、将盘写入切换到其它段时,将段管理信息保存在盘装置上。段管理信息如图12所示那样由段号和切换时的变换映象构成。所谓段号是指切换目标段的段号码,所谓切换时的变换映象是指段切换时刻的易失性存储器3上的变换映象的状态。
再有,每当段切换时切换时的变换映象不是全都写在上面,只要回写到当前段中已写入的逻辑地址的输入项目中即可。因此,通过在上一次段切换时记住时间印记并与变换映象的时间印记比较,就可以判定写入到当前段中的逻辑地址。
在该段分割方式中,在段切换时保存了段管理信息。因此,从段管理信息读出段切换时的变换映象,然后,只要检查由段管理信息的段号所指定的段的逻辑地址标记,就能够再现与检查全部逻辑地址标记的情况相同的变换映象。所以,利用该方式所必需的逻辑地址标记的检查数只要检查1个段的即可,在本例中作成变换映象所要的时间缩短到1/4。
进而,在非易失性存储器4上准备好与段内全部条对应的位映象,在段切换时清除该位映象,在一并写入和重新装入时将与已写入的条对应的比特置位成“1”。由此,在段切换之后只是有变化的条其位映象变成“1”。因此,在作成变换映象时,通过参照该位映象、只检查有变化的条的逻辑地址标记,可使检查数进一步减少,使作成变换映象所要的时间进一步缩短。
通常逻辑地址标记的长度是512~1024字节。盘的顺序存取和随机存取大约有50倍的性能差。在图2所示的方式中,逻辑地址标记的信息对各个条是分散存在的,所以,进行的是在变换映象作成时很耗费时间的随机存取。因此,如图13所示那样,准备了专用标记区(在段分割的情况下,是对每个段准备的),该标记区只连续地存储逻辑地址标记,能以高到50倍速度的顺序存取来读出逻辑地址标记。
而且,在将主机来的数据一并写入或重新装入数据的写入时,不仅将逻辑地址标记写入空闲区还写入对应的专用标记区。在该方法中,在图2的方式下,每一个条有4次盘写入,由于向专用区写入逻辑地址而增加1次。但是,作成变换映象的速度却提高了50倍,所以,当在盘装置的建立时间上出问题时,它是非常有效的方法。为了使向专用标记区的写入时间最少,使专用标记区如图13所示那样成为对象区域的中心,减少搜索时间。此外,盘装置2是以扇区(512字节等)为单位写入的,专用标记区内的逻辑地址标记没有必要以扇区为单位进行分配并在逻辑地址标记写入时读出。
最后,就时间印记进行说明。如图1所示,因时间印记存储在易失性存储器3上,故由于电源故障等原因,易失性存储器器3上的时间印记会丟失。因此,与变换映象一样,只在系统启动时调查全部条的逻辑地址标记,使最大的时间印记31的下一个值置成易失性存储器3上的时间印记31。再有,在作成变换映象的说明中所述的缩短时间的方法照样可以适用于时间印记的再生。
此外,每当写入盘装置时时间印记31加1,只在判定盘上的写入顺序时才使用。作为例子,说明时间印记31由24位计数器构成时的情况。在24位计数器中,计数器在16M次写入后完成1个循环而回到0。因此,一般来说,以有效时间印记的最小值为基准,将比它小的值加16M后进行比较判定。该最小值也是一样,只在系统启动时才调查全部条的逻辑地址标记并将它求出来。
但是,可以使用该方法的前提是,时间印记的最大值没有超过最小值,即时间印记最大值和最小值的差是在能用24位表示的范围内。因此,时间印记31必需在1个循环前更新全部条并重新更新时间印记值,因此,即使无效块少也控制成将在预先设定的写入次数间没有被更新的条作为重新装入的对象选出,或者只改写将无效块的逻辑地址作为NULL地址的条的逻辑地址标记。使用NULL地址的方法因为是改写逻辑地址标记块故与重新装入相比是非常简单的处理。
再有,在上述实施例中,对于无效块的判定,只说明了将2个条ST1、ST2的逻辑地址标记相互比较来进行判定的方法,但要调查全部无效块则必需调查2个条之间的全部组合。然而,如果有变换映象,则可以对逻辑地址标记内的各逻辑地址将指示有效数据的变换映象的时间印记与该条的时间印记进行比较,将时间印记值小的块判定为无效块。
图1已示出将数据分散在多个盘上的RAIDO的结构,但本发明的方式也可以适用于使用了奇偶检验的冗余性盘结构(RAID4、5)的情况。图14示出使用本发明构成的RAID5结构的盘存储装置的原理图。这是在图1的结构之上添加了冗余性盘25的结构,控制装置1、盘装置2(21、22、23、24)、易失性存储器3、非易失性存储器4、时间印记31、写入缓冲器41和缓冲器管理表42具有与图1所示的实施例相同的功能。
对于图14所示的实施例的操作,着眼于与图1所示的实施例的差别进行说明。在写入处理中,在主机来的写入数据以只比1条少1个块的数(K×4-1)存储于写入缓冲器时,当控制装置1将这些数据写入盘装置21~25中。这时,直到从存储在缓冲器管理表42的各块的逻辑地址和易失性存储器3上的时间印记31作成逻辑地址标记块作为最后的写入块为止,与图1所示的实施例相同。
然后,根据附加了该逻辑地址标记块的1个条的数据进行每一个条单元的异或逻辑(XOR)运算,作成奇偶性的条单元而且,将该带奇偶的条单元的数据整理后同时写入盘装置21~25的空闲区内。此外,时间印记31的值在写入结束时刻加1。这样,将很多零碎的写入归纳成1次,而且计算奇偶性时不必读出旧数据和旧的奇偶性块,所以,能够进一步减少存取次数。再有,条的重新装入处理的数据写入也一样,在作成带奇偶的条之后写入盘装置2。该状态示于图15。
在奇偶RAID的结构中,即使1台盘装置发生故障,通过计算发生故障的盘的数据和构成条的其他盘的数据的奇偶异或(XOR),可以再现发生故障的盘的数据,可以继续进行作为盘存储装置的服务。但是,当系统启动时1个盘发生故障时,因为还要读出没有存储逻辑地址标记的盘装置的数据并在再生逻辑地址标记之后进行检查,所以,作成变换映象很费时间,大大地增加了系统启动所需要的时间。
因此,如图16所示,控制成将构成条的数据块减少1个,把相同的逻辑地址标记写入2个盘装置。由此,即使1个盘装置发生故障,因为在作成变换映象时可以读出另一个盘装置的逻辑地址标记,所以,能够避免大幅度增加系统启动所要的时间。
此外,在使用专用标记区来高速地作成变换映象时,如图17所示那样,通过控制专用标记区的逻辑地址标记的分配以便使在专用标记区中存储逻辑地址标记的盘装置和存储在条中的盘装置不同,使条内的逻辑地址标记只要1个就行了。
再有,在向专用标记区写入逻辑地址标记时,若利用奇偶校验去对付盘故障,过去增加1次写入即可,但在这里必需要2次写入和2次读出,这样,大大地增加了一并写入和条的重新装入时的额外的盘写入时间。因此,该专用区的信息不能用奇偶校验来对付故障。该信息是用于使变换映象高速化,存储在有故障的盘装置的专用标记区中的逻辑地址标记也可以看作是条中逻辑地址标记(随机存取时),所以没有问题。此外,因用随机存取检查的逻辑地址标记只有1/5,故对于高速八成变换映象很有效果。
本发明可以适用于所有的不改写旧数据区、预先保存更新的数据归纳起来写入盘装置内事先准备好的另外的空闲区中的方法有效的领域。即,主要可以适用于盘装置和RAID结构的存储装置,所述盘装置不仅包括磁盘还包括在顺序写入和随机写入方面性能很不相同的光磁盘等,所述存储装置是具有在更新小块时需要2次读出和2次写入的奇偶校验的冗余性的RAID结构的存储装置。
如上所述,若按照本发明,因原理上无论何时都可以再生变换映象,故不必为了防备电源故障而将变换映象保存在非易失性存储器中。因此,可以构筑非常便宜的盘存储装置。此外,当因硬件故障而使非易失性存储器中的内容丢失时,以往的方法因不能再生变换映象故盘上的数据全部丢失,而现在不同,只是保存在写入缓冲器中的最近的写入数据才丢失,而盘上绝大部分数据仍然完好地保留下来了。因此,大大地提高了对抗故障的能力。进而,因从电源故障恢复过来的处理和通常的系统启动处理完全相同,故不需要系统终结和恢复时的特别处理,从而降低了开发成本。
此外,系统启动时的处理,也因能够通过将逻辑地址标记分散配置在多个盘装置中、设置可以顺序存取逻辑地址标记的专用标记区和对存储区的段分割管理等能实现高速化,故能够将系统启动时的等待时间控制在实际使用时不会发生问题的范围内。特别是,在奇偶性的RAID结构中,通过将逻辑地址标记记录在2个盘装置中,即使1个盘装置履发生故障也可以不增加系统启动的时间。

Claims (2)

1.一种盘存储装置的数据更新方法,该盘存储装置具有N+1个盘装置,其中N是一个不小于2的正整数,所述方法包括以下步骤:
在一个具有N×K个逻辑块的容量的写入缓冲存储器中累加要更新的逻辑块数据,直到所述逻辑块个数达到N×K-2块为止,其中K是表示块数量的一个整数;
生成两个逻辑地址标记块,该逻辑地址标记块包括用于所述N×K-2个逻辑块和存储在一个时间印记存储器中的用于将剩余的两个块存储在所述写入缓冲存储器中的时间印记的逻辑地址;
采用异逻辑操作生成K个奇偶块,该奇偶块对应于K个条形数据,该条形数据包括带有附加到N×K-2个逻辑块的所述两个逻辑地址标记块的N×K-2个数据逻辑块;和
将N×K-2个逻辑块和带有两个逻辑地址标记块的K个奇偶块作为一个条形顺序地写入到一个空区域,该空区域不同于N+1个盘装置上的存储要更新的数据的区域,以便使所述两个逻辑地址标记块存储在不同的盘装置中。
2.一种盘存储控制装置,包括:
一个盘存储装置,其中包括N个盘装置,其中N是不小于2的一个正整数;
一个写入缓冲器,具有等于N×K-1个逻辑块的容量,其中K是表示块的数量的一个整数;和
一个顺序写入控制单元;
所述顺序写入控制单元还包括:
一个第一装置,用于累加在此写入缓冲器中要更新的数据的逻辑块;
一个第二装置,用于延迟所述逻辑块的更新,直到累加的逻辑块达到一个选择的数量为止;
一个第三装置,用于产生一个包括在所述写入缓冲器中累加的逻辑块的逻辑地址的逻辑地址标记块;和
一个第四装置,用于从带有附加到选择数量的逻辑块的逻辑地址标记块的N×K-1个数据逻辑块产生K个奇偶块,并且将带有附加到此数据逻辑块的奇偶块的N×K个逻辑块连续地写入到一个空区域中,该空区域与N个盘装置上的保存要更新的数据的一个区域相分隔。
CNB011255730A 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置 Expired - Fee Related CN1194298C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP214656/97 1997-08-08
JP214656/1997 1997-08-08
JP9214656A JPH1153235A (ja) 1997-08-08 1997-08-08 ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB981162282A Division CN1174318C (zh) 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置

Publications (2)

Publication Number Publication Date
CN1347031A CN1347031A (zh) 2002-05-01
CN1194298C true CN1194298C (zh) 2005-03-23

Family

ID=16659392

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB011255730A Expired - Fee Related CN1194298C (zh) 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置
CNB981162282A Expired - Fee Related CN1174318C (zh) 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB981162282A Expired - Fee Related CN1174318C (zh) 1997-08-08 1998-08-07 盘存储装置的数据更新方法和盘存储控制装置

Country Status (6)

Country Link
US (1) US6219752B1 (zh)
EP (1) EP0898228B1 (zh)
JP (1) JPH1153235A (zh)
KR (1) KR100310896B1 (zh)
CN (2) CN1194298C (zh)
DE (1) DE69831455T2 (zh)

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3233079B2 (ja) * 1997-09-30 2001-11-26 ソニー株式会社 データ処理システム及びデータ処理方法
US6532517B1 (en) * 1999-04-13 2003-03-11 Webtv Networks, Inc. System and method for reducing disk chatter from disk-based data storage systems
KR100605893B1 (ko) 1999-10-08 2006-08-01 삼성전자주식회사 시간지연 시청을 위한 비디오 스트림 처리방법
TW535161B (en) * 1999-12-03 2003-06-01 Nec Electronics Corp Semiconductor memory device and its testing method
US6609176B1 (en) 1999-12-27 2003-08-19 Kabushiki Kaisha Toshiba Disk control system and data rearrangement method
JP3607153B2 (ja) * 2000-02-28 2005-01-05 シャープ株式会社 ファイル管理方法及び装置
JP4131894B2 (ja) 2000-02-29 2008-08-13 株式会社東芝 ランダムディスクライトに好適なディスク制御機構
SG99941A1 (en) * 2000-08-30 2003-11-27 Ibm Transaction support on logical disks
US6871271B2 (en) * 2000-12-21 2005-03-22 Emc Corporation Incrementally restoring a mass storage device to a prior state
JP3592640B2 (ja) * 2001-01-09 2004-11-24 株式会社東芝 ディスク制御システムおよびディスク制御方法
US6763424B2 (en) * 2001-01-19 2004-07-13 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
KR100401946B1 (ko) * 2001-08-10 2003-10-17 박종원 주소계산과 자료이동방법 및 이를 이용한 충돌회피 기억 장치
JP3579389B2 (ja) * 2001-11-30 2004-10-20 株式会社東芝 ディスクアレイ装置及び同装置におけるデータ復旧方法
JP3682256B2 (ja) * 2001-11-30 2005-08-10 株式会社東芝 ディスクアレイ装置及び同装置におけるパリティ処理方法
JP3590381B2 (ja) * 2001-12-18 2004-11-17 株式会社東芝 ディスクアレイ装置及び同装置におけるデータ更新方法
JP3526452B2 (ja) * 2001-12-18 2004-05-17 株式会社東芝 ディスクアレイ装置及びデータバックアップ方法
JP3702231B2 (ja) * 2002-01-31 2005-10-05 株式会社東芝 ディスクアレイ装置及び同装置における動的記憶容量拡張方法
EP1336967A1 (en) * 2002-02-15 2003-08-20 Deutsche Thomson-Brandt Gmbh Method and apparatus for addressing data segments on a recording medium for replay
US20040003172A1 (en) * 2002-07-01 2004-01-01 Hui Su Fast disc write mechanism in hard disc drives
US7069465B2 (en) * 2002-07-26 2006-06-27 International Business Machines Corporation Method and apparatus for reliable failover involving incomplete raid disk writes in a clustering system
JP3785127B2 (ja) * 2002-09-11 2006-06-14 株式会社東芝 ディスクアレイ制御装置及びディスクアレイ制御装置におけるデータ書き込み方法
JP4651913B2 (ja) * 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
JP2004348464A (ja) * 2003-05-22 2004-12-09 Hitachi Ltd ストレージ装置、及び通信信号の整形回路
JP4060235B2 (ja) 2003-05-22 2008-03-12 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
US8301809B2 (en) * 2003-07-02 2012-10-30 Infortrend Technology, Inc. Storage virtualization computer system and external controller thereof
US7509473B2 (en) * 2003-08-27 2009-03-24 Adaptec, Inc. Segmented storage system mapping
US7577806B2 (en) * 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7287133B2 (en) 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7577807B2 (en) * 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
JP4307202B2 (ja) * 2003-09-29 2009-08-05 株式会社日立製作所 記憶システム及び記憶制御装置
US7080768B2 (en) * 2003-11-10 2006-07-25 Worktools, Inc. Spring energized desktop stapler
JP4156499B2 (ja) 2003-11-28 2008-09-24 株式会社日立製作所 ディスクアレイ装置
JP4497918B2 (ja) * 2003-12-25 2010-07-07 株式会社日立製作所 ストレージシステム
JP4634049B2 (ja) 2004-02-04 2011-02-16 株式会社日立製作所 ディスクアレイ装置における異常通知制御
JP4306525B2 (ja) * 2004-04-16 2009-08-05 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7188212B2 (en) * 2004-05-06 2007-03-06 International Business Machines Corporation Method and system for storing data in an array of storage devices with additional and autonomic protection
WO2005109427A1 (en) * 2004-05-10 2005-11-17 Matsushita Electric Industrial Co., Ltd. Data recording/reproduction for write-once discs
US7093157B2 (en) * 2004-06-17 2006-08-15 International Business Machines Corporation Method and system for autonomic protection against data strip loss
US8066515B2 (en) * 2004-11-17 2011-11-29 Nvidia Corporation Multiple graphics adapter connection systems
US7885921B2 (en) * 2004-11-18 2011-02-08 International Business Machines Corporation Managing atomic updates on metadata tracks in a storage system
US8122193B2 (en) 2004-12-21 2012-02-21 Samsung Electronics Co., Ltd. Storage device and user device including the same
KR100578143B1 (ko) * 2004-12-21 2006-05-10 삼성전자주식회사 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템
JP4248510B2 (ja) * 2005-03-24 2009-04-02 株式会社東芝 計算機システム、ディスク装置およびデータ更新制御方法
US20060230455A1 (en) * 2005-04-12 2006-10-12 Yuan-Chang Lo Apparatus and methods for file system with write buffer to protect against malware
JP2007072839A (ja) * 2005-09-08 2007-03-22 Sony Corp 記録制御装置および方法、並びにプログラム
CN101313279A (zh) * 2005-10-14 2008-11-26 塞门铁克操作公司 一种在数据存储器中用于时间线压缩的技术
JP4892225B2 (ja) * 2005-10-28 2012-03-07 株式会社日立ハイテクノロジーズ 真空処理方法、真空搬送装置および半導体処理装置
KR100706808B1 (ko) 2006-02-03 2007-04-12 삼성전자주식회사 쓰기 버퍼로서 동작하는 불 휘발성 메모리를 구비한 데이터저장 장치 및 그것의 블록 회수 방법
US7549021B2 (en) 2006-02-22 2009-06-16 Seagate Technology Llc Enhanced data integrity using parallel volatile and non-volatile transfer buffers
US20070294565A1 (en) * 2006-04-28 2007-12-20 Network Appliance, Inc. Simplified parity disk generation in a redundant array of inexpensive disks
US8250316B2 (en) * 2006-06-06 2012-08-21 Seagate Technology Llc Write caching random data and sequential data simultaneously
WO2008073219A1 (en) * 2006-12-08 2008-06-19 Sandforce, Inc. Data redundancy in a plurality of storage devices
US10002000B2 (en) * 2007-04-09 2018-06-19 Open Invention Network, Llc Trace-assisted startup optimization from a virtual disk
KR101028929B1 (ko) * 2008-12-31 2011-04-12 성균관대학교산학협력단 실시간 시스템을 위한 로그 블록 연관성 분산 방법 및 이를수행하는 플래시 메모리 장치
JP5365236B2 (ja) 2009-02-16 2013-12-11 日本電気株式会社 ストレージシステム
KR101581859B1 (ko) * 2009-02-27 2016-01-21 삼성전자주식회사 메모리 시스템 및 그것의 플래시 변환 계층의 데이터 관리 방법
US8799572B2 (en) 2009-04-20 2014-08-05 Microsoft Corporation Sliding-window multi-class striping
JP4599450B2 (ja) * 2009-04-24 2010-12-15 株式会社東芝 電子機器、ファイルシステムの記憶領域割当法、および記憶領域割当プログラム
US8266501B2 (en) * 2009-09-29 2012-09-11 Micron Technology, Inc. Stripe based memory operation
KR20110103660A (ko) * 2010-03-15 2011-09-21 주식회사 히타치엘지 데이터 스토리지 코리아 광디스크 드라이브 레이드 기록 장치 및 방법
US9588888B2 (en) 2010-07-30 2017-03-07 Hewlett Packard Enterprise Development Lp Memory device and method for altering performance characteristic based on bandwidth demand
CN101930404B (zh) * 2010-08-27 2012-11-21 威盛电子股份有限公司 存储装置及其操作方法
EP2742429A4 (en) 2011-08-09 2015-03-25 Lsi Corp I / O DEVICE AND INTERACTION WITH DATA PROCESSING HOST
EP2764516A4 (en) * 2011-10-05 2015-07-08 Lsi Corp SELF-HISTORIZATION AND HIERARCHICAL CONSISTENCY FOR NON-VOLATILE STORES
JP2013196276A (ja) * 2012-03-19 2013-09-30 Fujitsu Ltd 情報処理装置、プログラムおよびデータ配置方法
US9395924B2 (en) 2013-01-22 2016-07-19 Seagate Technology Llc Management of and region selection for writes to non-volatile memory
US9213633B2 (en) 2013-04-30 2015-12-15 Seagate Technology Llc Flash translation layer with lower write amplification
WO2015189936A1 (ja) * 2014-06-11 2015-12-17 株式会社 東芝 共有ストレージシステム、及びストレージ装置へのアクセスを制御する方法
JP2016143296A (ja) * 2015-02-03 2016-08-08 富士通株式会社 情報記憶装置、ストレージシステムおよび情報記憶装置制御プログラム
JP6429124B2 (ja) 2015-03-27 2018-11-28 パナソニックIpマネジメント株式会社 光ディスク装置、方法およびコンピュータプログラム
CN107436735A (zh) * 2017-07-28 2017-12-05 郑州云海信息技术有限公司 一种分布式文件系统中存储单元状态更新方法
CN110568993B (zh) * 2019-08-06 2022-04-12 新华三技术有限公司成都分公司 一种数据更新方法及相关装置
US11329803B2 (en) 2020-09-29 2022-05-10 Amazon Technologies, Inc. Redundancy controls in convergent encryption using dynamic salt values
US11582025B2 (en) 2020-09-29 2023-02-14 Amazon Technologies, Inc. Efficient deduplication using block-based convergent encryption
CN114372023A (zh) * 2020-10-15 2022-04-19 行吟信息科技(上海)有限公司 数据存取方法、数据存取设备和推荐系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5233618A (en) * 1990-03-02 1993-08-03 Micro Technology, Inc. Data correcting applicable to redundant arrays of independent disks
US5195100A (en) * 1990-03-02 1993-03-16 Micro Technology, Inc. Non-volatile memory storage of write operation identifier in data sotrage device
US5124987A (en) * 1990-04-16 1992-06-23 Storage Technology Corporation Logical track write scheduling system for a parallel disk drive array data storage subsystem
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
KR970004255B1 (ko) * 1992-12-07 1997-03-26 인터내셔널 비지네스 머신즈 코포레이션 병렬 디스크 상에서의 고속 데이타 갱신 방법
WO1997001139A1 (en) * 1995-06-23 1997-01-09 Elonex Plc Disk array controller with enhanced synchronous write
US6058455A (en) * 1997-07-02 2000-05-02 International Business Corporation RAID system having a selectable unattended mode of operation with conditional and hierarchical automatic re-configuration

Also Published As

Publication number Publication date
JPH1153235A (ja) 1999-02-26
CN1174318C (zh) 2004-11-03
CN1347031A (zh) 2002-05-01
EP0898228A3 (en) 2004-01-21
KR19990023182A (ko) 1999-03-25
EP0898228B1 (en) 2005-09-07
US6219752B1 (en) 2001-04-17
EP0898228A2 (en) 1999-02-24
DE69831455T2 (de) 2006-06-14
CN1208891A (zh) 1999-02-24
DE69831455D1 (de) 2005-10-13
KR100310896B1 (ko) 2001-11-15

Similar Documents

Publication Publication Date Title
CN1194298C (zh) 盘存储装置的数据更新方法和盘存储控制装置
KR101758544B1 (ko) 비휘발성 메모리 시스템에서의 동기 미러링
US8429340B2 (en) Storage system comprising flash memory modules subject to plural types of wear-leveling processes
EP2942713B1 (en) Storage system and storage apparatus
EP0612015A1 (en) Improved disk array system having special parity groups for data blocks with high update activity
EP3306477B1 (en) Storage device and block storage method based on the storage device
US20100306466A1 (en) Method for improving disk availability and disk array controller
CN102087586B (zh) 数据处理方法及装置
US20180246793A1 (en) Data stripping, allocation and reconstruction
US20090265578A1 (en) Full Stripe Processing for a Redundant Array of Disk Drives
US20180113633A1 (en) Method and system for efficient cache buffering in a system having parity arms to enable hardware acceleration
CN1512353A (zh) 性能改善的数据存储和方法
CN1685418A (zh) 用于在写一次介质上的缺陷与分配管理的方法和设备
CN108170614B (zh) 一种避免数据重复回收的方法、装置及固态硬盘
JP2000010738A (ja) ディスクアレイシステム、同システムに適用される記憶容量拡張方法および記録媒体
JP2003280950A (ja) ファイル管理システム
JP2020042805A (ja) 永続記憶装置の管理
US6363457B1 (en) Method and system for non-disruptive addition and deletion of logical devices
US11049581B2 (en) Media error reporting improvements for storage drives
US20190026033A1 (en) Method and system for hardware accelerated cache flush
US6782444B1 (en) Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US12039205B2 (en) Flexible raid scheme allowing fast rebuild
US10338850B2 (en) Split-page queue buffer management for solid state storage drives
JP2001043031A (ja) 分散パリティ生成機能を備えたディスクアレイ制御装置
CN116225776A (zh) 一种固态硬盘的数据恢复方法、装置及设备

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050323

Termination date: 20090907