摘要:
A network storage server implements a method to maintain a parity declustered RAID organization with distributed hot sparing. The parity declustered RAID organization, which provides data redundancy for a network storage system, is configured as a RAID organization with a plurality of logical drives. The RAID organization is then distributed in a parity declustered fashion to a plurality of physical drives in the network storage system. The RAID organization also has a spare space pre-allocating on each of the plurality of physical drives. Upon failure of one of the plurality of physical drives, data stored in the failed physical drives can be reconstructed and stored to spare space of the surviving physical drives. After reconstruction, the plurality of logical drives remains parity-declustered on the plurality of surviving physical drives.
摘要:
A storage server resizes an array of mass storage devices and distributes data blocks stored in the array of mass storage devices evenly in a declustered organization across the resized array of mass storage devices. Resizing the array of mass storage devices may include adding a new mass storage device to the array or removing a mass storage device from the array. During resizing a data block is moved from one mass storage device to another mass storage device to minimize the imbalance of parity groups shared by the new mass storage devices in the array, as well as minimize the number of data blocks to be moved to uniformly balance the load across the new mass storage device.
摘要:
A storage server stores data in a stripe of a parity group that includes a plurality of data storage devices to store data and a parity storage device to store parity information. The stripe includes a data block from each of the data storage devices and a parity block from the parity storage device. The storage server receives a data access request specifying a data block in the stripe, and a lost write detection module detects an error in the data block. The lost write detection module compares a first storage device signature stored in a metadata field associated with the data block to a second storage device signature stored in a global field of the data storage device containing the data block. If the first storage device signature matches the second storage device signature, the lost write detection module compares a consistency point count stored in the metadata field to a reconstructed consistency point count. If the reconstructed consistency point count is greater than the consistency point count stored in the metadata field, the lost write detection module identifies the error as a lost write error for the data block. Accurately detecting and identifying the location of a lost write allows the storage server to correct the error and provide a user with a complete and accurate set of data.
摘要:
A parity pattern defines a repeated distribution of parity blocks within a distributed parity disk array (“DPDA”). The parity pattern identifies on which disks the parity block or blocks for a stripe are located. When a new disk is added to the DPDA, the parity pattern is modified so that the distribution of parity blocks within the parity pattern is even. Parity blocks within the DPDA are then redistributed to conform with the modified parity pattern.
摘要:
An n-way parity protection technique enables recovery of up to n storage device (e.g., disk) failures in a parity group of a storage array encoded to protect against n-way disk failures. The storage array is created by first configuring the array with m data disks, where m=p−1 and p is a prime number and a row parity disk. n−1 diagonal parity disks are then added to the array. Each diagonal parity set (i.e., diagonal) is associated with a slope that defines the data and row parity blocks of the array that are included in the diagonal. All diagonals having a common slope within a parity group are organized as a diagonal parity class. For each diagonal parity class, a diagonal parity storage disk is provided to store the diagonal parity.
摘要:
Storage servers use a fast, non-volatile or persistent memory to store data until it can be written to slower mass storage devices such as disk drives. If the server crashes before a write can complete, the data remains safely stored in non-volatile memory. If the data cannot be committed to disk when the server reboots (e.g. because the destination mass storage device is unavailable), it is stored in a file. When the disk reappears, the data in the file may be used to restore a file or filesystem on the disk to a consistent state.
摘要:
The input/output (I/O) performance of a hard disk drive in a mass storage computer system is evaluated to maintain efficiency by addressing I/O commands to sectors of the disk drive, evaluating the execution of the I/O commands to the sectors to obtain performance information for the sectors to which the I/O commands are addressed, comparing the performance information to a predetermined I/O performance criterion, and identifying any impaired sectors in which the performance information indicates less than the predetermined I/O performance criterion. Thereafter, further I/O commands to the impaired sectors are avoided.
摘要:
An apparatus comprises a substrate and transducers disposed over the substrate, each of the transducers comprising a different resonance frequency. A transducer device comprises circuitry configured to transmit signals, or to receive signals, or both. The transducer device also comprises a transducer block comprising a plurality of piezoelectric ultrasonic transducers (PMUT), wherein each of the PMUTs; and an interconnect configured to provide signals from the transducer block to the circuitry and to provide signals from the circuitry to the transducer block.
摘要:
A method for recovering from three failed data storage devices is disclosed. A plurality of data storage devices hold data, and a row parity storage device holds row parity for them. The data storage devices and the row parity storage device form a set of storage devices. A diagonal parity storage device and an anti-diagonal parity storage device hold parity computed diagonally over the set of storage devices. In the event of a failure of three data storage devices of the set of storage devices, a first failed storage device is chosen for first restoration. A missing block of the first failed storage device is computed by using the remaining set of storage devices, and the diagonal parity storage device, and the anti-diagonal parity storage device. The remaining two failed storage devices are restored by a diagonal parity restoration technique.