[go: up one dir, main page]

TWI338219B - Raid 3+3 - Google Patents

Raid 3+3 Download PDF

Info

Publication number
TWI338219B
TWI338219B TW093120457A TW93120457A TWI338219B TW I338219 B TWI338219 B TW I338219B TW 093120457 A TW093120457 A TW 093120457A TW 93120457 A TW93120457 A TW 93120457A TW I338219 B TWI338219 B TW I338219B
Authority
TW
Taiwan
Prior art keywords
data
storage
storage unit
data storage
code
Prior art date
Application number
TW093120457A
Other languages
English (en)
Other versions
TW200515146A (en
Inventor
Steven Robert Hetzler
Daniel Felix Smith
Shmuel Winograd
Original Assignee
Ibm
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 Ibm filed Critical Ibm
Publication of TW200515146A publication Critical patent/TW200515146A/zh
Application granted granted Critical
Publication of TWI338219B publication Critical patent/TWI338219B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1057Parity-multiple bits-RAID6, i.e. RAID 6 implementations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1059Parity-single bit-RAID5, i.e. RAID 5 implementations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1064Parity-single bit-RAID3, i.e. RAID 3 implementations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Description

1338219 九、發明說明: 相關申請之交互參照 本申請案係有關於專利申請號(代理人案號; ARC9-2003-0014-US1) ’ 標題為「變形碼(Anamorphic
Codes )」、專利申請號(代理人案號 ARC9-2003-0015-US1 ),標題為「自主同位交^ (Autonomic Parity Exchange)」、以及專利申請號(代理 人案號ARC9-2003-0016-US1) ’標題為「由冗餘陣列之 多路徑資料檢索(Multi-path Data Retrieval From
Redundant Array)」,以上皆於此同時共同審查、共同讓 渡和申請’且每一於此被納入作為參考。本申請亦關於共 同審查與共同讓渡的專利申請號(代理人案^ YOR9-2003-0069-US1) ’亦於此被納入作為參考。 【發明所屬之技術領域】 本發明係關於儲存系統。特別是’本發明係關於為儲 存單元之陣列(array of storage units)提供更佳的性能、 保護和有效率的系統和方法。 【先前技術】 以下疋義於文中使用,並為了例示而非限制的目的被 提供: 「元(element)」係一儲存單元上的—資料區塊(b|〇ck of data) ° …γ基本陣列(base array)」係一組「元」,係為一陣 歹J單元包占錯6吳或抹除更正碼(Error or Erasure 理慈 4BM/04077TW,ARC9-2003-0〇40(JL) 6 1338219
Correcting Code)。 陣列(array)」係一組儲存單元,具有一或更多基 本陣列。 「儲存條(stripe)」係一陣列中的一基本陣列。 η為基本陣列中資料單元之數目。 r為基本陣列中冗餘單元之數目。 m為陣列中儲存單元之數目。 d為陣列之最小漢明(Hamming)距離。 D為儲存系統之最小漢明距離。 丨〇w為執行更新寫入(update write)之 (丨〇 的數目。 陣列中儲存單元之總數為 m=n+r ° 儲存系統一般倚賴獨立磁碟冗餘陣列(RAID)技術 ,- 來保護,以避免儲存單元故障(failures)導致的資料遺失。 ^基於儲存單元的容量增加,目前的獨立磁碟冗餘陣列 十之達2它們實用性的極限。文中使用符號(χ+γ)來表 j ΐ料單元和丫冗餘單元。現今大部分的系統使用獨立 π 4、几餘陣列 5(η+1)或單一鏡射(s_e mirrorin9 } φ lr+,來作為基本卩車列設計。這兩種儲存系統配置都具有 · 农小漢明賴D=2,因祕護單—儲料元轉。如种 : 所用’「距離(distance)」意指最小漢明距離。然而 個磁碟故障(drive failure)和硬體錯誤(ha「d e|T〇「)會 增加,立磁碟冗餘陣列5系統配置中,資料遺失事件之^ 生。實務上已觀察到多個儲存單元遺失導致資料遺失。" 許多陣列配置被提出,供處理這樣的高故障率。例 W.^4IBM/04077TW · ARC9-2003-0040(JL) 1338219 如,具有距離D=3的獨立磁碟冗餘陣列6(n+2)、具有距 離D=3的雙鏡射(1+2)、以及具有距離D=4的獨立磁碟冗 餘陣列51 (n+(n+2))都被提出作為處理高故障率之解決辦 法。不過,所有這些陣列配置都有會如同表一和圖二說明 之缺點。 因此仍需要提供相較傳統方法具有較佳性能、保護和 效率的陣列配置。
【發明内容】 提供較傳統方法為佳的性 本發明提供一陣列配置, 能、保護和效率。 發明之優點她合至三個:祕儲存單元和三個核 疋的一陣列控制器提供:(3+3)配置在本文中係指 ,立3+3 _。資訊以對稱最大距離分隔碼 (symmetric Maximum distance Separation code) ‘貝料儲存子系統上,對稱最大距離分隔碼之 碼、EVEN0DD碼或EVEN〇DD碼之衍生碼、 ί i e ;omon碼。陣列控制器決定核對儲存單元之内 列㈣H二個㈣料和核對儲存單元之抹除,可由陣 障儲存單元(資料和檢查)之故 维错㈣絲/。:科儲存子系統上的資料遺失前發生。在 輸二” 二夺二陣列控制器只使用六個輸入 梅元之抹除,可由陣列控制器來 更&個輸入輪出作業中,二個為讀取作業,四個為 埋慈 4旧M/04077TW • ARC9-20〇3-〇〇4〇(JL) 8 1338219 寫入作業。t明確地,讀取作業由尚未更新的 取資料’而四個寫入作業將資料寫入已更新之ί:儲 存早兀、以及二個核對儲存單元。 、 【實施方式】 本發明提供新的儲存系統配置,其較先前 ,己置具有顯著優點。在此而言,本發明之儲 提供性能、保護和效率之最佳結合。本發明存♦έ 亦使得用於處理錯誤的全新技術變得可能, 專級。舉例來說,見專利申請號(代理;^ RC9-2^)3-G()14七S1) ’ 標題為「失真碼(Anam〇^ ^odes )」、專利申請號(代理 ARC9-2003-0015-us”,標題為「自主同位交J (^ut〇nomic Par丨ty Exchange)」、以及專利申請 Λ案號ARC9-2003_0016_US1),標題為「由冗餘 (路徑貧料檢索(Multi-path Data Retrjeval Fr〇m Redundant Array)」,以上皆於此被納入作為參考。 圖-顯示根據本發明之獨立磁碟冗餘陣列3+ 子系統勘。子系統勘包含陣列控制器1〇1 ; ^ 的二個貢料儲存單元A、B和c;以及包含冗餘的二 個核對儲存單元P、Q和R。資料儲存單元A、B、和c [ =對儲存單it P、Q和R,典型係驗碟機(_⑽ D_,HDDs) ’然文中稱為儲存單元,因為本發明可應 憶^:二如隨機存取記憶體儲存裝置: ϋΪί A R Γί裝置)之陣列形成的儲存系 統。贿早兀A、Β、C、p、Q和R透過介面1〇2 邱 S 4IBM/04077TW,ARC9-2003-0040(JL> 9 1338219 列控制器101溝通。p車卩彳^^丨$彳 他杵制Μ Λ 透過介面103和其 他控心以及主錄(未顯示)溝 列控制器1〇1和多個儲存陣列溝通。U㈣配置〜午陣 ,存子系、,4 100之配置被稱為對稱碼(sy_et「jc code),其中資料儲存單蚊數目和冗餘儲存單元之數目 相^ ’且為MDS。陣列控制器101從資料單元之内容來 計算冗餘資訊’使得所有資料可從六個儲存單 個恢復。
有幾個方法計异冗餘資料。較佳方法為使用 Winograd碼。Winograd碼為高度有效率的編碼,只利用 互斥或(exclusive-OR ’ XOR)作業來計算冗餘資料。有 高度有效率的Winograd碼供計算3+3碼,如專利申請號 (代理人案號YOR9-2003-0069-US1 ),於此被納入 參考。也有延伸至EVENODD碼,只利用互斥或作業, 然而它較Winograd碼不有效率。舉例來說,見M B丨aum 等人的「EVENODD :供容忍獨立磁碟冗餘陣列架構中雙
磁碟故障之有效方案(EVENODD : An Efficient Scheme For Tolerating Double Disk Failures In A RAID
Architecture)」,旧EE Trans, on Computers,Vol· 44, No. 2,pp. 192-202,Feb. 1995 以及 M· Blaum 等人的 「EVENODD 碼及其概述(The EVENODD Code and its
Generalization)」,高性能大量儲存與平行輸入/輸出:科 技與應用(High Performance Mass Storage and Parallel I/O : Technologies and Applications),H. Jin 等人編輯, lEEE&Wiley Press, New York, Chapter 14, pp. 187-208, 冲怒 4旧M/04077TW * ARC9-2003-0040(儿) 10 2001 〇 獨立磁碟冗餘陣列3+3儲存子系 (data efficjency)為 1/2。想 死 100 之貝枓效率 ㈣瓜达土 乂;為/2獨立磁碟冗餘陣列3+3陣列之 Ϊί产:ί:ί大儲存系統之—部分的儲存子系統,在關 子糸統提健鑛點。 糾·存 何一 立磁碟冗餘陣列3+3子系統100可以容忍任 二:存早7"之故障,而不遺失資料組。這是最大距離 ^ 質.:rj^nce Se陶tion ’MDS)抹除碼之 例如,磁碟冗餘陣列3+3儲存子系統10 用的=_d碼、EVENQDD、或EVEV〇DD碼之衍^ 二之恢復力容許以較傳統 二不緊急的方式,對獨立磁碟冗 3 ϋ存糸統1⑻做修護。亦即,藉由提供更多 〔故障子系統的機會增加’藉此容許在肇因於 ΙίΐΓίΐϊ之資,失之前有較長間隔。此外,藉由保 :土:克中的,存單凡數目低,相較於使用大數目儲存單 凡之子糸統’每-子系統中單元轉機會減少。 : 〇=2呀(即有剩餘冗餘),在修護階段中有一額外 j疋,谷許在修護過程令]桃任何使用中的單元之進 一v、或許小的資料遺失事件。此外,當一或更少儲存單 獨碟緣料1 3+3子系統湖耕列控制器 ,,可1 攸回傳不正確資料之任何儲存單元來的資 料0 、 ®.€4IBM/〇4〇77TW . ARC9-2003-0040(JL) 11 -—-__ 表一 獨立磁碟冗餘陣列配置 ---------- 距離 '—---- 儲存效率 寫入損失 獨立磁碟冗餘陣列5 2 ----- 93.8% 4 鏡射 2 50% 2 獨立磁碟冗餘陣列6 3 87.5% 6 獨立磁碟冗餘陣列2+2 3 50% 4 2x鏡射 3 33.3% 3 獨立磁碟冗餘陣列n+3 4 81.3% 8 獨立磁碟冗餘陣列3+3 4 50% 6 獨立磁碟冗餘陣列51 4 43.8% 6 3x鏡射 4 — 25% 4 表 比較不同傳統糸統配置與根據本發明之獨立磁 碟冗餘陣列3+3 魏置之資料儲存效率和寫入性能損 ^penalty)。第—(最左)欄列出_些傳統系統配置, 表-的第-攔中所列出的不同系統配置,第二_示复^ 小漢明距離,第三攔顯示資料儲存效率,而第四攔 入性能損失。每一個別系統配置之資料儲存效率值',、勿、寫 備分(spares),係假設m=i6個儲存單元之陣大%、略 計|。寫人性能損失値代表小區塊寫人之輸入輸出作g 數目0 邱慈 4旧M/04077TW . ARC9-2003-0040(儿) 12 1338219 圖二為比較表一所列系統配置經過一段時間的相對 保護(relat丨ve protection)的圖。橫座標列出系統配置, 包含根據本發明之獨立磁碟冗餘陣列3+3系統配置。長條 指出每一個別系統配置所提供的相對保護水平,如縱座標 所定量的。在圖二之範例中,假設m=16的陣列大小、平 均故障時間間隔(MTBF)為1百萬小時之250GB儲存 ,元、以及每1014傳輸位元中有彳的硬體錯誤機率。在保 護水平1之水平線201指明所選的保護目標:每5年每百 萬儲存單元有1 f料遺失事件。從圖二左邊開始,獨立磁 碟冗餘陣列5系統配置和鏡射系統配置(皆為距離d=2 的解決方法)提供的保護水平未達所選的保護目標(線 2〇1) ’顯露需要比這兩個系統配置提供的更強的解決方 法。距離D=3的獨立磁碟冗餘陣列6(n+2)系統配置有高 ,率’但於可靠度目標落後甚遠。對稱2+2⑽配置和 2x鏡射系統配置都是距離D=3的解決方法,而徘徊在所 ^護目標(線201)附近α這兩個系統配置有類似保護 &鏡射配置設計係用效率來換取性能。獨立磁 ,^陣列η+3系統配置為距離D=4的解決方法,且有 ’但具有極差寫入性能以及實質上和距離d=3的解 ίί面護水平。因此要達軸率,需要在可靠 較其 明之獨立磁碟冗餘陣列置 =、!,根據本發 的系統晴最= 統配置有相同寫入行為。3X鏡射系統設 liii4IBM/〇4〇77TW ARC9-20〇3-〇〇4〇(JL) 13 1338219 換得較佳寫入性能。圖二所示所有距離D=4的系統配置, 係具有對未來世代(>4錄量級)儲射、統足夠的保護 空間(headroom)。 根據本發明之一獨立磁碟冗餘陣列3+3系統配置達 到距離D=4,而只需要六個輸入輸出來做小區塊寫入。 &線性MDS碼使用傳統更新技術,來基於資料中的改 變而更新同位(_ies)。傳統技術需要從資料磁碟(咖 φ drive)讀取舊資料’從同位磁碟讀取對應的舊同位,寫入 新資料’計算新同位’並將新同位寫入同位磁碟。基於資 料,變而更新同位之傳統技術於文中將被稱為更新同位 之正向方法(forward method)」。因此,正向方法中執 行更新寫入要用的輪入輸出數目為: I0wf^d = + (l + r) , 醜酸料和同位寫入Siii同位 =2D (1) 在MDS碼中可用來更新同位的第二個方法 ^新同位之「互補方法(c〇mp丨ementary⑺她。。 ίίϊΐίΓ,現存資料先由尚更新的資料磁碟中讀取, 接者新貝料與随被寫人。互補更新方法巾執行 入要用的輸入輸出數目為: ,寫 IOw comp 0 — 1) v-V-, 讀取互補資料 (1 + r) ^-v-· 寫入新資料和同位 + m (2) 理慈 4旧M/04077TW,ARC9姻3 〇〇4〇(⑴ 因此, 則 互補方法巾有比傳統正向方法有效率的情況。當: (3) I〇W_py㈤細 n+r^2(r+1) (4) n^r+2 * ㈣4顯示有高度冗餘的陣列配置藉使用互補方法 i^u/νΓ1位係有較佳的輪入輸出效率。互補方法也更平 散輸人輸出負載㈣統之儲存單元,因為每一裝置 t = 3出—不是讀取就是寫人。相反地,正向方法 式。例如當附近的資料被快取 互補方法也有較佳實施特性。 ^肢財絲麟寫人時,㈣之
° ^ D=r+1 ; J ^MDS的情形中’執行—更新的輸人輸出的數目 為丨〇Wfwd=2D。對使用互補方法的對稱碼更新⑽,’ μ IOwsym=m ° =n+r =2r (5) -2D-2 因此,純使紅向更财法的—般Mds 形,省下兩個輸入輸出。此意謂著再相同寫入性能^ = 稱碼可達到比一般MDS碼多1的最小距離。 T子 理慈 4IBM/04077TW ‘ ARC9-2003-0040(JL) 15 1338219 方法參新寫A入至單元B的情形。使用互補 寫入單元B :而寫It讀,:,新資料被 統正向方法需要從單元Β、Ρ &和R Ϊ:相 二,以及將新丄 要八個輪入輸Ϊ 個輸入輸出,而傳統正向方法需 輸出來做更新要四個輸入 系統設計及其衍生可用ίί 冗餘陣列51 以六個輸入輸出達到距離D=4,但效^〈(^)的結合, 分散同位(distributed parity)μ 士。 餘陣列3+3系統配置—起使用, spot)。熱點會在資料存取ϋ (hot 冗餘陣列5使用分散同位(亦稱^磁碟 parity)來避免因有專屬同位儲存單^==「的 冗餘陣列4)而導致的熱點。使用 碟冗餘陣列系統會因讀取_修改_寫入作蜀立磁 有熱點。而使用互補更新方法的獨立磁碟冗上 衡分佈之一方法。此牽涉至 =y,她)平 元組的資料’使得每,存單元有所有^= 遍佈儲f單 Q和R)類型的元(elements)。參照圖三 ^ 到6顯示為行(她嶋),们到6顯示為列(「〇=)。1 理慈 4旧M/04077TW,ARC9-2003-〇〇4〇(儿) 16 1338219 右轉-單元。清楚地,梅其 ?,ΐ發:二存以列, 置、光學儲存裝置、和磁帶儲存裝:) 糸統。此外’它適合於虛擬』 network-attached storage ) 士丨。匕更可應用於任何冗餘系統,其中有將一冗 ίΐ irC,〇mP〇nent) (subset) ^
JiSlir^~"^*(donationo^> 雖然以上發明已為了解清楚之目的 — 是,某些改變與修改可被實施而在所&以 之乾:内。因此’目前實施例要被當成例示性而非 限^性,且本發明不欲被限制在文中所給細節,而可 附申凊專利範圍之範疇及均等物内修改。
【圖式簡單說明】 明,ίϊΓ係以範例而非關㈣式,於所關式來說 月/、中類似參照編號表示類似元件,且其中: /圖一顯示根據本發明之獨立磁碟冗餘陣列3+3儲存 子系統; 圖二為比較圖,比較不同傳統系統配置與根據本發明 之獨立磁碟冗餘陣列3+3系統配置的相對保護;以及 圖二顯不根據本發明之獨立磁碟冗餘陣列3+3儲存 叶驻 4旧M/04077TW,ARC9-20〇3-〇〇4〇(儿) 17 1338219 中子系統被配置為複數個儲存條,每-儲存你 【主要元件符號說明】 100獨立磁碟冗餘陣列3+3儲 101陣列控制器 糸、,先 102介面 201水平線 103介面 ;'!!#: 4IBM/04077TW · ARC9-2003-0040(JL) 18

Claims (1)

  1. 喲年丫月7^^£本 十、申請專利範圍: 1· 一種資料儲存子系統,包含: 三個資料儲存單元; 三個核對儲存單元;以及 -陣列控制n ’耗合至該三個轉儲存單元和該三個 2對儲存單元’該_控㈣決定該核對儲存單元二内 容,使得該資料儲存單元和該核對儲存單元之任何三個抹 除(erasures)可由該陣列控制器更正; 其中該陣列控制器在決定該核對儲存單元之内容時, 只使^六個輸人輸出⑻)作#來諸包含在任—該資料 儲ϊΐ元和該核對儲存單元内之一資料區塊,使得該資料 儲$單元和該核對儲存單元之任何三個抹除可由該陣列控 制is更正。 如7求項1所述之;貝料儲存子系統,其中該資料儲存子 系統係以一對稱的最大距離分隔碼(symmetric Maximum Distance Separation code)而儲存資料。 儲存子系統,其中該最大距離分 ,其中該最大距離分 5·如請求項2所述之資料儲存子系統 隔碼係為一 EVENODD碼。 ’ 統,其中該最大距離分 6·如請求項2所述之資料儲存子系 邵慈 4旧M/04077TW . ARC9-20〇3-〇〇4〇(儿) 19 隔碼係為-EVENODD媽之-衍生碼。 7業,其中該輪入輸出作 入你L為#取作業而該輸人輸出作業之中四個A官 四個為寫 尚ί更儲f子系統,其令該讀取作業由 =寫入已更新之該資料儲存單元、以及該三個核^ί 子系統,其巾任何三個資料 料儲存子纽上的===轉,可麵存於該資 存询,其"料可自一部 料儲存單元1 /其所有三個資 系統上的任何資料。 卫J益可恢復儲存在該資料子 l ㈣存在—㈣儲存子线上㈣料之朴4 貝枓儲存子系統包含三個資料儲存單元、的三貝1之方^^玄 疋以及-陣列控制器,該 私對储存単 存單元和該三個核對儲存^控制益搞合至遠三個資料儲 儲存單元之内容列控制器決定該核對 之任何三㈣柯由子單元 1-1!4IBM/04077TW - ARC9-2〇〇3-〇〇4〇(jL) 20 及 從尚未更新的該兩個資料儲存單元讀 取互補資料;以 寫入資料至已更新的該資料锉;„ 核對儲存單元。 貝卄儲存早兀,以及至該三個 13.如請求項12所述之方法,发中兮咨 ^ 一對稱的最大距離分隔碼而儲存資料二貝科儲存子糸統係以 一 Wir^gtH3。所述之方法’其中該最大距離分隔碼係為 1—娜,其靖卿蝴包含 ====觸之找,料歸妓料隔碼包含 其中該最大距離分隔竭包含 18_如請求項12所述之方法,其中任 J故障和核對儲存單元的故障,可在儲存㈣資元 系統上的資料遺失前發生。 、貝枓儲存子 19·如請求項12所述之方法,更包含自 單元恢復資料之步驟。 刀了 °只取儲存 卯慈 4旧_4077TW,ARC9-2〇〇3_〇〇4〇(jl) 21
TW093120457A 2003-07-14 2004-07-08 Raid 3+3 TWI338219B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/619,648 US7254754B2 (en) 2003-07-14 2003-07-14 Raid 3+3

Publications (2)

Publication Number Publication Date
TW200515146A TW200515146A (en) 2005-05-01
TWI338219B true TWI338219B (en) 2011-03-01

Family

ID=34062609

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093120457A TWI338219B (en) 2003-07-14 2004-07-08 Raid 3+3

Country Status (8)

Country Link
US (3) US7254754B2 (zh)
EP (1) EP1644819A2 (zh)
JP (1) JP2009514056A (zh)
KR (1) KR100985444B1 (zh)
CN (1) CN100495353C (zh)
CA (1) CA2532766C (zh)
TW (1) TWI338219B (zh)
WO (1) WO2005006173A2 (zh)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP2355360B1 (en) 2002-10-05 2020-08-05 QUALCOMM Incorporated Systematic encoding and decoding of chain reaction codes
US7379974B2 (en) * 2003-07-14 2008-05-27 International Business Machines Corporation Multipath data retrieval from redundant array
US7533325B2 (en) 2003-07-14 2009-05-12 International Business Machines Corporation Anamorphic codes
EP1665539B1 (en) 2003-10-06 2013-04-10 Digital Fountain, Inc. Soft-Decision Decoding of Multi-Stage Chain Reaction Codes
US7134066B2 (en) * 2003-10-20 2006-11-07 International Business Machines Corporation Generalized parity stripe data storage array
US8645622B2 (en) * 2003-11-18 2014-02-04 International Business Machines Corporation Method to protect data on a disk drive from uncorrectable media errors
CN100505552C (zh) * 2003-12-01 2009-06-24 数字方敦股份有限公司 使用基于子码元的代码来保护数据不被删除
US7418651B2 (en) 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
JP2006268524A (ja) * 2005-03-24 2006-10-05 Fujitsu Ltd 記憶装置、その制御方法及びプログラム
US7742755B2 (en) * 2005-09-19 2010-06-22 Silverbrook Research Pty Ltd Retrieving a bill via a coded surface
US7506200B2 (en) * 2006-01-25 2009-03-17 International Business Machines Corporation Apparatus and method to reconfigure a storage array disposed in a data storage system
JP5550834B2 (ja) 2006-02-13 2014-07-16 デジタル ファウンテン, インコーポレイテッド 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US7506201B2 (en) * 2006-08-28 2009-03-17 International Business Machines Corporation System and method of repair management for RAID arrays
US7702853B2 (en) 2007-05-04 2010-04-20 International Business Machines Corporation Data storage system with power management control and method
KR101129260B1 (ko) 2007-09-12 2012-03-27 디지털 파운튼, 인크. 신뢰성 있는 통신들을 가능하게 하는 소스 식별 정보 생성 및 통신
US8145841B2 (en) 2008-06-06 2012-03-27 Pivot3 Method and system for initializing storage in a storage system
US8219750B2 (en) * 2008-06-30 2012-07-10 Pivot3 Method and system for execution of applications in conjunction with distributed RAID
US8176247B2 (en) * 2008-10-28 2012-05-08 Pivot3 Method and system for protecting against multiple failures in a RAID system
WO2010049276A1 (en) * 2008-10-28 2010-05-06 International Business Machines Corporation Multiple erasure protection
US8656131B2 (en) 2008-10-31 2014-02-18 Dot Hill Systems Corporation Method and apparatus for expanding a virtual storage device
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US8392805B2 (en) 2010-07-15 2013-03-05 Hewlett-Packard Development Company, L. P. Non-MDS erasure codes for storage systems
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8386841B1 (en) * 2010-07-21 2013-02-26 Symantec Corporation Systems and methods for improving redundant storage fault tolerance
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8433979B2 (en) 2011-02-28 2013-04-30 International Business Machines Corporation Nested multiple erasure correcting codes for storage arrays
US9058291B2 (en) 2011-02-28 2015-06-16 International Business Machines Corporation Multiple erasure correcting codes for storage arrays
US8527699B2 (en) 2011-04-25 2013-09-03 Pivot3, Inc. Method and system for distributed RAID implementation
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US8468423B2 (en) * 2011-09-01 2013-06-18 International Business Machines Corporation Data verification using checksum sidefile
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US8874995B2 (en) * 2012-02-02 2014-10-28 International Business Machines Corporation Partial-maximum distance separable (PMDS) erasure correcting codes for storage arrays
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
WO2014140677A1 (en) 2013-03-15 2014-09-18 Emc Corporation Offloading raid update operations to disk controllers
US10685037B2 (en) * 2013-12-18 2020-06-16 Amazon Technology, Inc. Volume cohorts in object-redundant storage systems
US9870284B2 (en) 2015-05-27 2018-01-16 International Business Machines Corporation First responder parities for storage array
US10588053B2 (en) * 2015-08-30 2020-03-10 Lg Electronics Inc. Cluster-based collaborative transmission method in wireless communication system and apparatus therefor
US10055278B2 (en) * 2015-10-30 2018-08-21 International Business Machines Corporation Autonomic parity exchange in data storage systems
US10031803B2 (en) 2015-12-14 2018-07-24 International Business Machines Corporation Distributed coding for multiple dimensional parities
US11454448B2 (en) * 2017-11-27 2022-09-27 Dana Canada Corporation Enhanced heat transfer surface
WO2019227456A1 (zh) * 2018-06-01 2019-12-05 东莞理工学院 一种evenodd码的构造方法
US11151056B2 (en) * 2019-04-25 2021-10-19 EMC IP Holding Company LLC Efficient virtualization layer structure for a data storage system
CN118971895B (zh) * 2024-07-18 2025-11-18 中国科学技术大学 一种基于日志的高可用纠删码更新方法

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5148432A (en) * 1988-11-14 1992-09-15 Array Technology Corporation Arrayed disk drive system and method
AU630635B2 (en) 1988-11-14 1992-11-05 Emc Corporation Arrayed disk drive system and method
US5128944A (en) * 1989-05-26 1992-07-07 Texas Instruments Incorporated Apparatus and method for providing notification of bit-cell failure in a redundant-bit-cell memory
JPH03172026A (ja) * 1989-11-30 1991-07-25 Nec Corp 符号化復号化方式
US5134616A (en) * 1990-02-13 1992-07-28 International Business Machines Corporation Dynamic ram with on-chip ecc and optimized bit and word redundancy
US5680574A (en) * 1990-02-26 1997-10-21 Hitachi, Ltd. Data distribution utilizing a master disk unit for fetching and for writing to remaining disk units
US5134619A (en) * 1990-04-06 1992-07-28 Sf2 Corporation Failure-tolerant mass storage system
US5204836A (en) * 1990-10-30 1993-04-20 Sun Microsystems, Inc. Method and apparatus for implementing redundancy in parallel memory structures
US5579475A (en) * 1991-02-11 1996-11-26 International Business Machines Corporation Method and means for encoding and rebuilding the data contents of up to two unavailable DASDS in a DASD array using simple non-recursive diagonal and row parity
US5258984A (en) 1991-06-13 1993-11-02 International Business Machines Corporation Method and means for distributed sparing in DASD arrays
US5301297A (en) * 1991-07-03 1994-04-05 Ibm Corp. (International Business Machines Corp.) Method and means for managing RAID 5 DASD arrays having RAID DASD arrays as logical devices thereof
US5257391A (en) * 1991-08-16 1993-10-26 Ncr Corporation Disk controller having host interface and bus switches for selecting buffer and drive busses respectively based on configuration control signals
US5499337A (en) * 1991-09-27 1996-03-12 Emc Corporation Storage device array architecture with solid-state redundancy unit
US5379417A (en) * 1991-11-25 1995-01-03 Tandem Computers Incorporated System and method for ensuring write data integrity in a redundant array data storage system
US5506977A (en) * 1991-12-17 1996-04-09 Dell Usa, L.P. Method and controller for minimizing reads during partial stripe write operations to a disk drive
US5398253A (en) * 1992-03-11 1995-03-14 Emc Corporation Storage unit generation of redundancy information in a redundant storage array system
WO1993018456A1 (en) * 1992-03-13 1993-09-16 Emc Corporation Multiple controller sharing in a redundant storage array
WO1993023803A1 (en) * 1992-05-21 1993-11-25 Fujitsu Limited Disk array apparatus
US5666511A (en) * 1992-10-08 1997-09-09 Fujitsu Limited Deadlock suppressing schemes in a raid system
US5617425A (en) * 1993-05-26 1997-04-01 Seagate Technology, Inc. Disc array having array supporting controllers and interface
US6269453B1 (en) * 1993-06-29 2001-07-31 Compaq Computer Corporation Method for reorganizing the data on a RAID-4 or RAID-5 array in the absence of one disk
JP3188071B2 (ja) * 1993-10-14 2001-07-16 富士通株式会社 ディスクキャッシュ装置
JP3078972B2 (ja) * 1993-11-05 2000-08-21 富士通株式会社 ディスクアレイ装置
US5485571A (en) * 1993-12-23 1996-01-16 International Business Machines Corporation Method and apparatus for providing distributed sparing with uniform workload distribution in failures
US5862158A (en) * 1995-11-08 1999-01-19 International Business Machines Corporation Efficient method for providing fault tolerance against double device failures in multiple device systems
US5809332A (en) * 1996-06-03 1998-09-15 Emc Corporation Supplemental communication between host processor and mass storage controller using modified diagnostic commands
KR100275900B1 (ko) * 1996-09-21 2000-12-15 윤종용 알에이아이디 서브시스템에 있어서 분할패러티 예비 디스크 구현방법
US6161165A (en) * 1996-11-14 2000-12-12 Emc Corporation High performance data path with XOR on the fly
JP3271916B2 (ja) * 1996-12-06 2002-04-08 株式会社エクシング 音・動画再生システム
US5793683A (en) * 1997-01-17 1998-08-11 International Business Machines Corporation Wordline and bitline redundancy with no performance penalty
JP3595099B2 (ja) 1997-03-17 2004-12-02 富士通株式会社 デバイスアレイ・システム
US6154853A (en) * 1997-03-26 2000-11-28 Emc Corporation Method and apparatus for dynamic sparing in a RAID storage system
US5867433A (en) * 1997-07-11 1999-02-02 Vanguard International Semiconductor Corporation Semiconductor memory with a novel column decoder for selecting a redundant array
US5937428A (en) * 1997-08-06 1999-08-10 Lsi Logic Corporation Method for host-based I/O workload balancing on redundant array controllers
JP3618529B2 (ja) * 1997-11-04 2005-02-09 富士通株式会社 ディスクアレイ装置
KR19990051729A (ko) * 1997-12-19 1999-07-05 정선종 이중 어레이 제어기를 갖는 래이드 시스템의 구조
US6353895B1 (en) * 1998-02-19 2002-03-05 Adaptec, Inc. RAID architecture with two-drive fault tolerance
US6138125A (en) * 1998-03-31 2000-10-24 Lsi Logic Corporation Block coding method and system for failure recovery in disk arrays
JP4234233B2 (ja) * 1998-05-27 2009-03-04 富士通株式会社 情報記憶装置及びプログラムが記憶された記録媒体
US6279138B1 (en) * 1998-08-04 2001-08-21 International Business Machines Corporation System for changing the parity structure of a raid array
US6272591B2 (en) * 1998-10-19 2001-08-07 Intel Corporation Raid striping using multiple virtual channels
US6381715B1 (en) * 1998-12-31 2002-04-30 Unisys Corporation System and method for performing parallel initialization and testing of multiple memory banks and interfaces in a shared memory module
US7000069B2 (en) * 1999-04-05 2006-02-14 Hewlett-Packard Development Company, L.P. Apparatus and method for providing very large virtual storage volumes using redundant arrays of disks
US6275898B1 (en) * 1999-05-13 2001-08-14 Lsi Logic Corporation Methods and structure for RAID level migration within a logical unit
US6341331B1 (en) * 1999-10-01 2002-01-22 International Business Machines Corporation Method and system for managing a raid storage system with cache
US6530004B1 (en) * 2000-06-20 2003-03-04 International Business Machines Corporation Efficient fault-tolerant preservation of data integrity during dynamic RAID data migration
MY134095A (en) * 2000-10-23 2007-11-30 Ibm Method and apparatus for performing drive-based updates to disk array controllers
US20020069317A1 (en) * 2000-12-01 2002-06-06 Chow Yan Chiew E-RAID system and method of operating the same
US6775794B1 (en) * 2001-05-23 2004-08-10 Applied Micro Circuits Corporation Use of activity bins to increase the performance of disk arrays
JP2003084923A (ja) 2001-09-06 2003-03-20 Hitachi Ltd クラスタ型ディスクアレイ装置の構成方法
US6748488B2 (en) * 2001-09-28 2004-06-08 Sun Microsystems, Inc. Storage array having multiple erasure correction and sub-stripe writing
JP2003196032A (ja) * 2001-12-26 2003-07-11 Nec Corp ストレージ装置のライトキャッシュ制御方法及びストレージ装置
US6687791B2 (en) * 2002-01-07 2004-02-03 Sun Microsystems, Inc. Shared cache for data integrity operations
US7350126B2 (en) * 2003-06-23 2008-03-25 International Business Machines Corporation Method for constructing erasure correcting codes whose implementation requires only exclusive ORs
US7069382B2 (en) * 2003-09-24 2006-06-27 Aristos Logic Corporation Method of RAID 5 write hole prevention

Also Published As

Publication number Publication date
JP2009514056A (ja) 2009-04-02
CA2532766A1 (en) 2005-01-20
EP1644819A2 (en) 2006-04-12
US20080126890A1 (en) 2008-05-29
US8108750B2 (en) 2012-01-31
CN100495353C (zh) 2009-06-03
US7254754B2 (en) 2007-08-07
US7788569B2 (en) 2010-08-31
CA2532766C (en) 2011-04-05
TW200515146A (en) 2005-05-01
US20050015700A1 (en) 2005-01-20
KR100985444B1 (ko) 2010-10-06
WO2005006173A3 (en) 2006-06-08
US20080016413A1 (en) 2008-01-17
WO2005006173A2 (en) 2005-01-20
WO2005006173A9 (en) 2006-02-23
CN1902592A (zh) 2007-01-24
KR20060052772A (ko) 2006-05-19

Similar Documents

Publication Publication Date Title
TWI338219B (en) Raid 3+3
CN101888398B (zh) 基于(d,k)摩尔图的网络存储结构的数据存储方法
JP4516846B2 (ja) ディスク・アレイ・システム
US20120151254A1 (en) System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory
US20100262755A1 (en) Memory systems for computing devices and systems
CN103135946B (zh) 基于ssd的大规模存储系统中的文件布局方法
US20080016416A1 (en) Autonomic Parity Exchange
CN101984400B (zh) 一种raid控制方法、装置及系统
CN101916173A (zh) 一种基于raid的数据读写方法及其系统
Xiang et al. A hybrid approach to failed disk recovery using RAID-6 codes: Algorithms and performance evaluation
CN103019893A (zh) 一种多盘容错的二维混合盘raid4系统架构及其读写方法
US20100169571A1 (en) Data redundancy using two distributed mirror sets
EP2889751B1 (en) Method and apparatus for determining redundant array of independent disks
TW200540623A (en) System and method for drive recovery following a drive failure
JP6260193B2 (ja) ストレージシステム、及びストレージプログラム
US8924814B2 (en) Write management using partial parity codes
CN108984133A (zh) 一种ssd中raid的实现方法
CN105630417B (zh) 一种raid5系统及在raid5系统失效后继续写数据的方法
US20190286374A1 (en) Selectively improving raid operations latency
CN102446261A (zh) 一种提高raid写效率的方法
TW201124836A (en) Raid system
CN104281499A (zh) 基于奇偶校验的raid条带镜像数据分布方法
US8898392B2 (en) Data storage system including backup memory and managing method thereof
KR101645829B1 (ko) 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들
CN113590038B (zh) 固态硬盘的管理方法和固态硬盘

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees