WO2005041045A3 - Methods of reading and writing data - Google Patents

Methods of reading and writing data Download PDF

Info

Publication number
WO2005041045A3
WO2005041045A3 PCT/US2004/035257 US2004035257W WO2005041045A3 WO 2005041045 A3 WO2005041045 A3 WO 2005041045A3 US 2004035257 W US2004035257 W US 2004035257W WO 2005041045 A3 WO2005041045 A3 WO 2005041045A3
Authority
WO
WIPO (PCT)
Prior art keywords
quorum
storage devices
stripe
messages
holding
Prior art date
Application number
PCT/US2004/035257
Other languages
French (fr)
Other versions
WO2005041045A2 (en
Inventor
Svend Frolund
Arif Merchant
Yasushi Saito
Susan Spence
Alistair C Veitch
Original Assignee
Hewlett Packard Development Co
Svend Frolund
Arif Merchant
Yasushi Saito
Susan Spence
Alistair C Veitch
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 Hewlett Packard Development Co, Svend Frolund, Arif Merchant, Yasushi Saito, Susan Spence, Alistair C Veitch filed Critical Hewlett Packard Development Co
Priority to EP04796271A priority Critical patent/EP1678616A2/en
Publication of WO2005041045A2 publication Critical patent/WO2005041045A2/en
Publication of WO2005041045A3 publication Critical patent/WO2005041045A3/en

Links

Classifications

    • 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
    • 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
    • G06F11/1088Reconstruction on already foreseen single or plurality of spare disks
    • 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
    • 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/104Metadata, i.e. metadata associated with RAID systems with parity

Abstract

A method of reading data comprises sending read messages to storage devices (102) holding the stripe and receiving at least a quorum of reply messages. The reply message from the storage device (102) holding the data block includes the data block. The quorum meets a quorum condition of a number such that any two selections of the number of stripe blocks intersect in the minimum number of the stripe blocks needed to decode the stripe. A method of writing data comprises sending query messages to storage devices (102) holding the stripe, receiving a query reply message from each of at least a first quorum of the storage devices (102), sending modify messages to the storage devices (102), and receiving a write reply message from each of at least a second quorum of the storage devices (102). The first and second quorums each meet the quorum condition.
PCT/US2004/035257 2003-10-23 2004-10-22 Methods of reading and writing data WO2005041045A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP04796271A EP1678616A2 (en) 2003-10-23 2004-10-22 Methods of reading and writing data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/693,573 2003-10-23
US10/693,573 US7284088B2 (en) 2003-10-23 2003-10-23 Methods of reading and writing data

Publications (2)

Publication Number Publication Date
WO2005041045A2 WO2005041045A2 (en) 2005-05-06
WO2005041045A3 true WO2005041045A3 (en) 2006-12-21

Family

ID=34522429

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2004/035257 WO2005041045A2 (en) 2003-10-23 2004-10-22 Methods of reading and writing data

Country Status (3)

Country Link
US (1) US7284088B2 (en)
EP (1) EP1678616A2 (en)
WO (1) WO2005041045A2 (en)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7310703B2 (en) * 2003-10-23 2007-12-18 Hewlett-Packard Development Company, L.P. Methods of reading and writing data
US7266716B2 (en) * 2003-10-23 2007-09-04 Hewlett-Packard Development Company, L.P. Method and recovery of data using erasure coded data from stripe blocks
US8799706B2 (en) * 2004-03-30 2014-08-05 Hewlett-Packard Development Company, L.P. Method and system of exchanging information between processors
US8726129B1 (en) * 2004-07-23 2014-05-13 Hewlett-Packard Development Company, L.P. Methods of writing and recovering erasure coded data
US20060080574A1 (en) * 2004-10-08 2006-04-13 Yasushi Saito Redundant data storage reconfiguration
US9047306B1 (en) * 2005-10-17 2015-06-02 Hewlett-Packard Development Company, L.P. Method of writing data
US7827144B1 (en) 2005-11-17 2010-11-02 Hewlett-Packard Development Company, L.P. Methods of reading and writing data
US7761663B2 (en) * 2006-02-16 2010-07-20 Hewlett-Packard Development Company, L.P. Operating a replicated cache that includes receiving confirmation that a flush operation was initiated
US7725655B2 (en) * 2006-02-16 2010-05-25 Hewlett-Packard Development Company, L.P. Method of operating distributed storage system in which data is read from replicated caches and stored as erasure-coded data
US10142115B2 (en) * 2008-03-31 2018-11-27 International Business Machines Corporation Distributed storage network data revision control
WO2010057186A1 (en) * 2008-11-17 2010-05-20 Unisys Corporation Data recovery using error strip identifiers
US8392682B2 (en) 2008-12-17 2013-03-05 Unisys Corporation Storage security using cryptographic splitting
US8135980B2 (en) 2008-12-23 2012-03-13 Unisys Corporation Storage availability using cryptographic splitting
US8386798B2 (en) 2008-12-23 2013-02-26 Unisys Corporation Block-level data storage using an outstanding write list
US8037391B1 (en) * 2009-05-22 2011-10-11 Nvidia Corporation Raid-6 computation system and method
US8296515B1 (en) 2009-05-22 2012-10-23 Nvidia Corporation RAID-6 computation system and method
US8359463B2 (en) 2010-05-26 2013-01-22 Hewlett-Packard Development Company, L.P. Selecting a configuration for an application
US8386841B1 (en) * 2010-07-21 2013-02-26 Symantec Corporation Systems and methods for improving redundant storage fault tolerance
US8762353B2 (en) 2012-06-13 2014-06-24 Caringo, Inc. Elimination of duplicate objects in storage clusters
US9104560B2 (en) 2012-06-13 2015-08-11 Caringo, Inc. Two level addressing in storage clusters
US8799746B2 (en) * 2012-06-13 2014-08-05 Caringo, Inc. Erasure coding and replication in storage clusters
US9276973B2 (en) * 2013-03-29 2016-03-01 Philip Scott Lyren Peer-to-peer data storage
EP2863566B1 (en) 2013-10-18 2020-09-02 Université de Nantes Method and apparatus for reconstructing a data block
CN103558998B (en) * 2013-11-07 2016-03-30 华为技术有限公司 A kind of method and apparatus of data manipulation
KR101797482B1 (en) * 2016-04-22 2017-11-14 주식회사 티맥스데이터 Method, apparatus, and computer program stored in computer readable medium for recoverying block in database system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5740465A (en) * 1992-04-08 1998-04-14 Hitachi, Ltd. Array disk controller for grouping host commands into a single virtual host command
US7310703B2 (en) * 2003-10-23 2007-12-18 Hewlett-Packard Development Company, L.P. Methods of reading and writing data
US7266716B2 (en) * 2003-10-23 2007-09-04 Hewlett-Packard Development Company, L.P. Method and recovery of data using erasure coded data from stripe blocks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FROLUND S., MERCHANT A., SAITO Y., SPENCE S., VEITCH A.: "FAB: enterprise storage systems on a shoestring", 9TH WORKSHOP ON HOT TOPICS IN OPERATING SYSTEMS, May 2003 (2003-05-01), Kauai, Hawai, USA, pages 169 - 174, XP002397170 *
GOODSON G.R., WYLIE J.J., GANGER G.R., REITER M.K.: "Decentralized storage consistence via versioning servers.", TECHNICAL REPORT CMU-CS-02, September 2003 (2003-09-01), Carnegie Mellon University, School of Computer Science, pages 1 - 16, XP002397169, Retrieved from the Internet <URL:http://reports-archive.adm.cs.cmu.edu/anon/2002/CMU-CS-02-180.pdf> [retrieved on 20060831] *
ZHANG Z., LIAN Q.: "Reperasure: Replication Protocol using Erasure-code in Peer-to-Peer Storage Network", PROCEEDINGS 21ST IEEE SYMPOSIUM ON RELIABLE DISTRIBUTED SYSTEMS, 13 October 2002 (2002-10-13), pages 330 - 335, XP002397171 *

Also Published As

Publication number Publication date
US20050091450A1 (en) 2005-04-28
EP1678616A2 (en) 2006-07-12
WO2005041045A2 (en) 2005-05-06
US7284088B2 (en) 2007-10-16

Similar Documents

Publication Publication Date Title
WO2005041045A3 (en) Methods of reading and writing data
WO2005043531A3 (en) Methods of reading and writing data
WO2005043530A3 (en) Method of recovering data
WO2002014997A3 (en) Apparatus and method for writing and reading data to and from a virtual volume of redundant storage devices
GB0022131D0 (en) Data sorting in information storage systems
EP1152429A3 (en) Data storage device
EP1347369A3 (en) Method for writing contiguous arrays of stripes in a raid storage system
EP1217524A3 (en) Method and system for data block sparing in a solid-state storage device
WO2003014939A3 (en) Synchronized mirrored data in a data storage device
EP1585006A3 (en) A storage system executing encryption and decryption processing
CA2308456A1 (en) Method and system for using a frequent shopper card as a phone calling card
EP1734450A3 (en) Storage system and replication creation method thereof
AU2003213910A1 (en) Certificate information storage system and method
EP1843249A3 (en) Storage controllers for asynchronous mirroring
WO2005043378A3 (en) Dynamic parity distribution technique
AU2001232147A1 (en) Method for the distribution of data marks on a medium, and method and apparatus for the holographic recording and readout of data
EP0874313A3 (en) Method of storing data in a redundant array of disks
FR2787233B1 (en) METHOD FOR VERIFYING THE INTEGRITY OF THE DECODING CIRCUITS OF A MEMORY
HK1053879A1 (en) Agent system, agent selling method, information providing device, and data recorded medium
MY127614A (en) File management method
EP1271542A3 (en) Method and system for fast data access using a memory array
AU4274501A (en) Data distributing method, data distributing system, computer, reproducing deviceand recording medium
EP1215678A3 (en) Semiconductor memory, and memory access method
EP1494243A3 (en) Memory system having data inversion and data inversion method for a memory system
TW368658B (en) Semiconductor memory

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2004796271

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2004796271

Country of ref document: EP