CN100336007C - 磁盘阵列数据写入方法 - Google Patents

磁盘阵列数据写入方法 Download PDF

Info

Publication number
CN100336007C
CN100336007C CNB2005101058903A CN200510105890A CN100336007C CN 100336007 C CN100336007 C CN 100336007C CN B2005101058903 A CNB2005101058903 A CN B2005101058903A CN 200510105890 A CN200510105890 A CN 200510105890A CN 100336007 C CN100336007 C CN 100336007C
Authority
CN
China
Prior art keywords
data
disk
cutting
disk array
magnetic 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
CNB2005101058903A
Other languages
English (en)
Other versions
CN1744025A (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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Priority to CNB2005101058903A priority Critical patent/CN100336007C/zh
Publication of CN1744025A publication Critical patent/CN1744025A/zh
Application granted granted Critical
Publication of CN100336007C publication Critical patent/CN100336007C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

一种磁盘阵列数据写入方法,其被执行于包含有一第一时钟与一第二时钟的一写入周期,并由一第一磁盘、一第二磁盘、一第三磁盘及一存储器模块配合应用。这些磁盘被用来储存一第一检核数据、一第二数据及一第二检核数据。第二数据包含一第三切割数据及一第四切割数据,第一检核数据储存于存储器模块中。磁盘阵列数据写入方法包括以下步骤。首先于第一时钟将第二数据的第四切割数据写入第二磁盘。接着于第一时钟读取储存于第一磁盘中的第二数据的第三切割数据。接着于第一时钟将第一检核数据写入第三磁盘。接着于第二时钟依据第二数据的第三切割数据及第四切割数据以运算出第二检核数据。最后于第二时钟将第二检核数据储存于存储器模块中。

Description

磁盘阵列数据写入方法
技术领域
本发明涉及一种数据写入方法,特别是涉及一种磁盘阵列数据写入方法。
背景技术
自个人计算机问世以来,硬盘是最常使用的储存装置之一。但在整个计算机系统架构中,与中央处理器(CPU)及随机存取存储器(RAM)比较起来,硬盘的存取速度是计算机中最慢的关键点之一。且由于伺服器的大量运用,专业影音对大容量、高速存储设备的需求,为了加速计算机整体的数据流量,以提高处理性能,磁盘阵列(RedundantArrays of Inexpensive Disks,RAID)系统遂成为近来使用者对存储设备的最佳选择。
磁盘阵列除了通过将数据切割之后储存于不同的硬盘上以提高系统的处理性能之外,亦可通过奇偶校验(Parity)的概念及方法,能在磁盘阵列中任何一个硬盘故障时,将故障硬盘内的应有数据经计算后予以还原,以提高储存于磁盘阵列中的数据的安全性。
磁盘阵列是由2个以上的硬盘于系统中模拟一个逻辑硬盘,并使用磁盘阵列控制器依据不同的阵列形式以模拟各种规格的磁盘阵列。目前较常用的磁盘阵列规格有RAID 0、RAID 1、RAID 3、RAID 4及RAID 5规格的磁盘阵列。
在将数据写入磁盘阵列时,公知的作法以RAID 5规格为例,系将一数据切割为多个切割数据(依据硬盘数量而定),再分别将切割数据写入不同的硬盘中,接着,依据该等切割数据并做异或(XOR)逻辑运算以得到奇偶校验数据,最后再将奇偶校验数据写入硬盘中。
因此,在一个写入周期中,需要执行1、将切割数据写入硬盘;2、读出切割数据以作逻辑运算;3、将奇偶校验数据写入硬盘,共三个命令。即,系统需要三个时钟,以执行磁盘阵列的写入命令。
虽然仅是三个时钟,但磁盘阵列一般用于需要处理大量数据的系统或伺服器中,当要写入庞大数据时,所浪费的时间实是不容小觑。因此,如何节省磁盘阵列数据写入时间的方法,以更进一步提高磁盘阵列的性能,实为当前重要课题之一。
发明内容
有鉴于上述课题,本发明的目的为提供一种可节省系统运作时间的磁盘阵列数据写入方法。
因此,为了实现上述目的,依据本发明的一种磁盘阵列数据写入方法,其被执行于一写入周期,并由至少一第一磁盘、一第二磁盘、一第三磁盘及一存储器模块配合应用。写入周期包含一第一时钟及一第二时钟。第一磁盘、第二磁盘及第三磁盘被用来储存一第一数据、一第一检核数据、一第二数据及一第二检核数据。第一数据包含一第一切割数据及一第二切割数据。其中,第二数据包含一第三切割数据及一第四切割数据。另外,于第一磁盘中存储有第三切割数据,而于存储器模块中存储有第一检核数据。
磁盘阵列数据写入方法包括以下步骤:首先在第一时钟将第二数据的第四切割数据写入第二磁盘;在第一时钟读取储存于第一磁盘中的第二数据的第三切割数据;在第一时钟将第一检核数据写入第三磁盘;在第二时钟依据第二数据的第三切割数据及第四切割数据以运算出第二检核数据;在第二时钟将第二检核数据存储在存储器模块中。
承上所述,依据本发明的磁盘阵列数据写入方法利用两个时钟,将数据及检核数据写入磁盘中,即,利用两个时钟,以处理一个磁盘阵列写入命令;与公知作法相较,可节省一个时钟。因此当系统或伺服器于处理庞大的数据时,可节省处理时间,以提升系统或伺服器的运作效率。
附图说明
图1为一示意图,显示依据本发明较佳实施例的磁盘阵列数据写入方法配合应用的硬件;
图2为一示意图,显示依据本发明较佳实施例的磁盘阵列数据写入方法的一个写入周期;
图3为一流程图,显示依据本发明较佳实施例的磁盘阵列数据写入方法;以及
图4A及图4B为示意图,显示依据本发明较佳实施例的磁盘阵列数据写入方法应用于不同规格的磁盘阵列。
元件符号说明:
21     磁盘阵列              211    第一磁盘
212    第二磁盘              213    第三磁盘
22     存储器模块            23     控制器
24     微处理器              D1     第一数据
D11    第一切割数据          D12    第二切割数据
D2     第二数据              D21    第三切割数据
D22    第四切割数据          PA     第一检核数据
PB     第二检核数据          Wcycle 写入周期
CLK1   第一时钟              CLK2   第二时钟
P1~P5 磁盘阵列数据写入方法流程
具体实施方式
以下将参照相关附图,说明依本发明较佳实施例的磁盘阵列数据写入方法。
请参照图1所示,本发明较佳实施例的磁盘阵列数据写入方法由一磁盘阵列21及一存储器模块22配合应用。磁盘阵列21用以储存一第一数据D1、一第一检核数据PA、一第二数据D2及一第二检核数据PB。第一数据D1包含一第一切割数据D11及一第二切割数据D12,而第二数据D2包含一第三切割数据D21及一第四切割数据D22。本实施例中,磁盘阵列21由一第一磁盘211、一第二磁盘212与一第三磁盘213所组成。当然,若组成磁盘阵列21的磁盘越多,则由数据所切割的切割数据亦会对应于磁盘数量而相对地增加。
另外,请参照图2所示,本发明较佳实施例的磁盘阵列数据写入方法在一写入周期Wcycle中要将一笔数据及一笔检核数据写入磁盘阵列21中。本实施例中,写入周期Wcycle具有一第一时钟CLK1及一第二时钟CLK2。
本实施例中,第一切割数据D11与第二切割数据D12在写入周期Wcycle的上一个写入周期即已分别写入于第一磁盘211与第二磁盘212。另外,本实施例中,更可包括一控制器23(例如为磁盘阵列控制器)与一微处理器24(例如为中央处理器)。控制器23分别与第一磁盘211、第二磁盘212、第三磁盘213以及存储器模块22电连接,而微处理器24与控制器23电连接。第一检核数据PA由微处理器24依据第一切割数据D11与第二切割数据D12执行一逻辑运算而得。本实施例中,微处理器24执行一异或运算而得到第一检核数据PA
请参照图3并搭配图1所示,本发明较佳实施例的磁盘阵列数据写入方法,例如于第一磁盘211中储存有第三切割数据D21,而于存储器模块22中储存有第一检核数据PA,而磁盘阵列数据写入方法包括以下流程:
首先于流程P1,于写入周期Wcycle的第一时钟CLK1将第四切割数据D22写入第二磁盘212中。
接着于流程P2,于第一时钟CLK1读取存储于第一磁盘211中的第三切割数据D21。本实施例中,是通过控制器23将第三切割数据D21读出至微处理器24。
接着于流程P3,于第一时钟CLK1将第一检核数据PA写入第三磁盘213。
于此,本实施例中,是将写入第四切割数据D22、读出第三切割数据D21及写入第一检核数据PA,在第一时钟CLK1中以一读写命令完成。
接着于流程P4,是依据第三切割数据D21与第四切割数据D22以运算出第二检核数据PB。本实施例中,是由微处理器24依据第三切割数据D21与第四切割数据D22、并执行异或逻辑运算,而得到第二检核数据PB
最后于流程P5,是将第二检核数据PB储存于存储器模块22中。于此,系统即完成数据的写入。而第二检核数据PB则于写入周期Wcycle的下一个写入周期再与下一笔数据一并写入磁盘阵列21中。
另外,本实施例中,如图4A所示,当第三磁盘213为一检核数据磁盘时,第二检核数据PB被写入于第三磁盘213中,即第一检核数据PA与第二检核数据PB皆位于相同的磁盘中,则此系统可应用于一RAID3规格或依RAID 4规格磁盘阵列。再如图4B所示,当第二检核数据PB被写入于第一磁盘211或第二磁盘212中时,即第一检核数据PA与第二检核数据PB位于不同的磁盘中,则此系统可应用于一RAID 5规格磁盘阵列。
本实施例中,是在写入周期Wcycle将由第一数据D1(即上一个写入周期的数据)运算而得的第一检核数据PA写入磁盘阵列21,并将由第二数据D2运算而得的第二检核数据PB储存于存储器模块22,待下一个写入周期时,再将第二检核数据PB写入磁盘阵列21。如此一来,当系统关机之前,仍会有一检核数据储存于存储器模块22中,因此,必须于关机之前将此检核数据写入磁盘阵列21中,以确保数据完整。
综上所述,本发明的磁盘阵列数据写入方法改变了公知的写入方法,在一个写入周期中仅需使用两个时钟即可将数据与上一笔数据的检核数据写入磁盘阵列中,如此一来,在每个写入周期皆可节省一个时钟,虽然在系统关机前需再花费一个时钟以将最后一个检核数据写入磁盘阵列中,然而在数据流量较大的系统或伺服器中,各个写入周期累积下来所节省的时间是相当可观的,因此可节省系统或伺服器处理数据的时间,提高了运作效率。
以上所述仅为举例性,而非为限制性者。任何未脱离本发明的精神与范畴,而对其进行的等效修改或变更,均应包含于所附权利要求的范围中。

Claims (10)

1.一种磁盘阵列数据写入方法,系执行于一写入周期,并由至少一第一磁盘、一第二磁盘、一第三磁盘及一存储器模块配合应用,其中该写入周期包含一第一时钟及一第二时钟,该第一磁盘、该第二磁盘及该第三磁盘系用以储存一第一数据、一第一检核数据、一第二数据及一第二检核数据,该第一数据系包含一第一切割数据及一第二切割数据,而该第二数据系包含一第三切割数据及一第四切割数据,于该第一磁盘中储存有该第三切割数据,而于该存储器模块中储存有该第一检核数据,该磁盘阵列数据写入方法包含:
于该第一时钟将该第二数据的该第四切割数据写入该第二磁盘;
于该第一时钟读取储存于该第一磁盘中的该第二数据的该第三切割数据;
于该第一时钟将该第一检核数据写入该第三磁盘;
于该第二时钟依据该第二数据的该第三切割数据及该第四切割数据以运算出该第二检核数据;以及
于该第二时钟将该第二检核数据储存于该存储器模块中。
2.根据权利要求1所述的磁盘阵列数据写入方法,其中该第三磁盘为一检核数据磁盘。
3.根据权利要求2所述的磁盘阵列数据写入方法,其中该第二检核数据被写入该第三磁盘中。
4.根据权利要求2所述的磁盘阵列数据写入方法,其被应用于一RAID 3规格的磁盘阵列、或应用于一RAID 4规格的磁盘阵列。
5.根据权利要求1所述的磁盘阵列数据写入方法,其中该第二检核数据被写入该第一磁盘或该第二磁盘中。
6.根据权利要求5所述的磁盘阵列数据写入方法,其被应用于一RAID 5规格的磁盘阵列。
7.根据权利要求1所述的磁盘阵列数据写入方法,还包括:
利用一微处理器以依据该第二数据的该第三切割数据及该第四切割数据执行一逻辑运算而得到该第二检核数据。
8.根据权利要求7所述的磁盘阵列数据写入方法,其中该逻辑运算为异或运算。
9.根据权利要求1所述的磁盘阵列数据写入方法,其中该第一检核数据是依据该第一数据的该第一切割数据及该第二切割数据运算而得的。
10.根据权利要求1所述的磁盘阵列数据写入方法,其中该第一检核数据或该第二检核数据分别为一奇偶校验数据。
CNB2005101058903A 2005-09-29 2005-09-29 磁盘阵列数据写入方法 Active CN100336007C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101058903A CN100336007C (zh) 2005-09-29 2005-09-29 磁盘阵列数据写入方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101058903A CN100336007C (zh) 2005-09-29 2005-09-29 磁盘阵列数据写入方法

Publications (2)

Publication Number Publication Date
CN1744025A CN1744025A (zh) 2006-03-08
CN100336007C true CN100336007C (zh) 2007-09-05

Family

ID=36139418

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101058903A Active CN100336007C (zh) 2005-09-29 2005-09-29 磁盘阵列数据写入方法

Country Status (1)

Country Link
CN (1) CN100336007C (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261064A (en) * 1989-10-03 1993-11-09 Advanced Micro Devices, Inc. Burst access memory
US5748885A (en) * 1994-12-23 1998-05-05 Emc Corporation Method and apparatus for reduction of I/O operations in persistent storage system
US6370611B1 (en) * 2000-04-04 2002-04-09 Compaq Computer Corporation Raid XOR operations to synchronous DRAM using a read buffer and pipelining of synchronous DRAM burst read data
US20030126343A1 (en) * 2001-12-31 2003-07-03 Olarig Sompong Paul Supporting interleaved read/write operations from/to multiple target devices
CN1503224A (zh) * 2002-11-22 2004-06-09 华为技术有限公司 5级独立冗余磁盘阵列中多盘失败情况下的读写操作方法
CN1542600A (zh) * 2003-04-26 2004-11-03 �Ҵ���˾ 配置用于独立磁盘冗余阵列存储系统的存储器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5261064A (en) * 1989-10-03 1993-11-09 Advanced Micro Devices, Inc. Burst access memory
US5748885A (en) * 1994-12-23 1998-05-05 Emc Corporation Method and apparatus for reduction of I/O operations in persistent storage system
US6370611B1 (en) * 2000-04-04 2002-04-09 Compaq Computer Corporation Raid XOR operations to synchronous DRAM using a read buffer and pipelining of synchronous DRAM burst read data
US20030126343A1 (en) * 2001-12-31 2003-07-03 Olarig Sompong Paul Supporting interleaved read/write operations from/to multiple target devices
CN1503224A (zh) * 2002-11-22 2004-06-09 华为技术有限公司 5级独立冗余磁盘阵列中多盘失败情况下的读写操作方法
CN1542600A (zh) * 2003-04-26 2004-11-03 �Ҵ���˾ 配置用于独立磁盘冗余阵列存储系统的存储器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
异构磁盘阵列RAID5结构数据布局研究 王刚,李中,刘晓光,刘璟,计算机工程与应用,第29期 2004 *

Also Published As

Publication number Publication date
CN1744025A (zh) 2006-03-08

Similar Documents

Publication Publication Date Title
US8046628B2 (en) Failure recovery memory devices and methods
US9262085B2 (en) Systems and methods for optimizing write accesses in a storage array
JP2014194795A (ja) Dramをスタックする方法及び装置
CN111679784B (zh) 存储装置和操作存储装置的方法
CN104347122A (zh) 一种消息式内存模组的访存方法和装置
US10606692B2 (en) Error correction potency improvement via added burst beats in a dram access cycle
US7961435B2 (en) Composite single structured hard disk drive
CN107678690A (zh) 一种固态硬盘及其冗余独立磁盘阵列的实现方法
CN115543223A (zh) 灵活构成磁盘阵列卡的方法、介质、设备及磁盘阵列卡
US11055189B2 (en) Replaceable memory
US20090083482A1 (en) Increasing the speed at which flash memory is written and read
CN100336007C (zh) 磁盘阵列数据写入方法
CN100470489C (zh) 磁碟阵列中处理资料运算的方法及其控制器
US7949895B2 (en) Data reading method
Curry et al. Arbitrary dimension reed-solomon coding and decoding for extended raid on gpus
US11175986B1 (en) Storage systems implementing offset erasure code stripes
CN100342319C (zh) 磁盘阵列写入指令处理方法
US7328308B2 (en) Data writing method for RAID
Theodorides et al. ˆB: Disk array data layout tolerating multiple failures
Du et al. Work-in-Process: Smart Migration for Reliability Enhancement of 3D TLC NAND Flash Storage Systems
Han et al. P-DRAMSim2: Exploiting thread-level parallelism in DRAMSim2
CN1588299A (zh) 进行硬盘阵列数据迁移的方法及相关装置
US20130080696A1 (en) Storage caching/tiering acceleration through staggered asymmetric caching
Changlong et al. Reliability analysis of high-speed and sustained data recording system based on disk array
Sanders et al. Multi-terabyte EIDE disk arrays running Linux RAID5

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant