摘要:
A storage system having a plurality of disks arranged in a RAID array with one of said disks being a replacement disk. A method and apparatus for restoring the contents of the replacement disk without interrupting concurrent access to the RAID array. An access request by a user application to a data block in the replacement disk results in regeneration and reconstruction of the accessed data block. In addition, the systematic reconstruction of data or parity blocks not yet accessed by the user application occurs by locating status bits associated with each data and parity block of the new disk.
摘要:
A data storage system using a RAID array and a logging process and apparatus that identifies a parity block that may not contain the proper parity for its associated data blocks and which prevents such inconsistent parity information from being used in the regeneration of unavailable data. A small fraction of the blocks of each disk are dedicated to storing parity metadata bits. The parity metadata is associated with the parity blocks and identifies whether or not each parity block contains the proper parity information for its associated data blocks or may contain invalid information. The data integrity of the RAID array is preserved by preventing the generation of undetected corrupt data.
摘要:
Data storage systems using a RAID-4 or RAID-5 organization divide an application I/O request into a number of individual I/O requests, each of which is contained within the boundaries of a single strip. The data blocks of each chunk on a strip responsive to an I/O request can form a complex geometric pattern requiring complicated operations to perform the I/O request. To simplify the necessary operations, each individual I/O request to a strip is divided into at most three requests targeted to data blocks forming a rectangle and each of these rectangles are processed as a unit. If a data block within a rectangle is unavailable, then the request to that rectangle is further subdivided into at most two requests targeted to data blocks forming smaller, non-overlapping rectangles which collectively are the original rectangle. The recursive decomposition of rectangles into smaller rectangles isolates the data block with an error and permits the selection of fewer and less complicated operation algorithms to complete the I/O request.
摘要:
A storage system having a plurality of disks arranged into a RAID array and a logging process and apparatus that identifies corrupt or invalid data and which prevents the corrupt or invalid data from being sent to a user application or used in any computations internal to the functioning of the array. In the preferred embodiment, a plurality of status bits, each having a first and second state are associated with each data block and parity block. If the status bit indicates that the block may contain corrupt or invalid information then that block is not used in regenerating data for an unavailable block or sent to a user application upon a read request.
摘要:
The present invention provides a method for copying data through a virtualized storage system using distributed table driven (I/O) mapping. In a system having a virtual disk (the “original disk”), a persistent mapping table for this virtual disk exists on a controller, and volatile copies of some or all entries in this mapping table are distributed to one or more more mapping agents. The method of the present invention creates a new virtual disk mapping table that has the exact same entries as the mapping table as the original virtual disk. The new snapshot disk then shares the same storage as the original disk, so it is space efficient. Furthermore, creating new snapshot disk involves only copying the contents of the mapping table, not moving data, so the creation is fast. In order to allow multiple virtual disks to share storage segments, writes to either the original virtual disk or the snapshot copy cannot be seen by the other. Therefore, in addition to simply copying the mapping table, both the original and snapshot disk mapping table must also cause writes to these disks to be handled specially. Finally, any changes to the original disk mapping table stored in the controller must be coordinated with the volatile copies stored in the mapping agent in such a way so that all hosts see a consistent view of that disk.
摘要:
The present invention provides a system and method for creating virtualized storage in a storage area network using distributed table-driven input/output mapping. The present invention distributes the virtualization mapping in multiple parallel, mapping agents that are separate from a controller. This allows the performance-sensitive mapping process to be parallelized and distributed optimally for performance, while the control of the mapping may be located in a controller chosen for optimal cost, management, and other implementation practicalities. The mapping agents store the virtual mapping tables in volatile memory, substantially reducing the cost and complexity of implementing the mapping agents. The controller is responsible for persistent storage of mapping tables, thereby consolidating the costs and management for persistent mapping table storage in a single component. Distributed virtualization also allows the controller to manage multiple virtual disks used by multiple host systems, and allows a single virtual disk to be shared by multiple host systems. The mapping agents preferably do not interact only with other mapping agents, thereby improving the scalability of the virtual storage system and the virtual storage system's tolerance of component failures.
摘要:
A virtual storage system comprises an agent to store a first table to map virtual storage segments to storage locations, and a controller to store a second table and to intermittently cause contents of the first table to be replaced by contents of the second table. During an I/O operation, one of the entries in the first table can be accessed by a host to determine one of the storage locations. Also, a method for performing an I/O operation on a virtual storage segment, defined by first table that maps a storage segment to a first storage location, comprises turning off I/O operations at the first storage location, identifying portions of the virtual storage segment to be effected during a write operation, storing a record of identified portions at a second table not the first table, and writing to portions of the second storage location associated with the identified portions.
摘要:
A digital data management system for managing a shadow set of storage media includes a plurality of storage media each accessible by at least one data processing device for I/O operations. Successive comparisons are carried out between data stored in corresponding locations in the storage media while maintaining access to the storage media for I/O operations. When inconsistency between data in corresponding locations is detected, a management operation is performed on at least one of the shadow set storage media. The management operation includes interrupting I/O operations to at least the storage medium on which the operation is performed, modifying data on one of the shadow set storage media to correct the inconsistency, and resuming availability of the storage media for I/O operations.
摘要:
Preferred embodiments of the present invention provide a system and method for the management of virtual storage. The system and method include an object-oriented computer hardware/software model that can be presented, for example, via a management interface (e.g., via graphical user interfaces, command line interfaces, application programming interfaces, etc.). In some preferred embodiments, the model separates physical storage management from virtual disks presented to hosts and management can be automated such that the user (e.g., customer, manager and/or administrator) specifies goals rather than means—enhancing ease of use while maintaining flexible deployment of storage resources.
摘要:
A log for managing data in a shadow set of storage media includes a system for maintaining a log of address information associated with at least one write command received from one of a plurality of data processing devices. The system for maintaining a log of address information includes a device for receiving a write command from a data processing device, a device which writes data associated with the write command in a section of one of the storage media, and a device which writes address information in a log indicative of the location of that section. A device is provided which then implements a management operation on data stored on one of the storage media in accordance with the address information stored in the log.