摘要:
Example embodiments respond to input/output (I/O) requests to a storage stack having a hierarchy of layers. In one such embodiment, responsive to an I/O request for data from a higher layer of the stack to a lower of the stack in hierarchy order, a first help response is generated at the lower layer and sent to the higher layer to recover the data. In turn, at the higher layer, it is determined whether a recover mechanism can fulfill the I/O request and, if not, a second help response is generated and sent to a next higher layer in the hierarchy. At the next higher layer, it is determined whether a recovery mechanism can fulfill the I/O request and, if not, a third help response is generated and sent to an even next higher layer in the hierarchy.
摘要:
In one embodiment, a method of coordinating data recovery in a storage stack with a hierarchy of layers includes, upon an input/output (I/O) request from a layer of the stack, issuing a help response to recover the data from a higher layer in hierarchy order. The method further includes processing the help response, at the higher layer, by issuing a return code of success or further help response to an even higher layer.
摘要:
In one embodiment, a method of data recovery in a storage system includes, upon failure to fulfill an I/O request for requested data to a primary volume, consulting a change set to determine whether the requested data are current in a snapshot or replica. Further, such an embodiment includes providing the requested data using the snapshot or replica without further accessing the change set, if the requested data are current in the snapshot or replica, or issuing an error or failure status, if the requested data are not current.
摘要:
In one embodiment, a method of coordinating data recovery in a storage stack with a hierarchy of layers includes, upon an input/output (I/O) request from a layer of the stack, issuing a help response to recover the data from a higher layer in hierarchy order. The method further includes processing the help response, at the higher layer, by issuing a return code of success or further help response to an even higher layer.
摘要:
A method and system self encrypts a disk storage device. Given a plurality of data storage devices, the system establishes an encryption key for the plurality of data storage devices. The system locally stores the encryption key in a piecewise manner throughout the plurality of data storage devices such that the encryption key is rendered undeterminable with less than a threshold subset of the plurality of data storage devices. This results in the plurality of data storage devices being self encrypting. Upon an increase or decrease in the plurality, the system resplits the encryption key and locally stores the resulting pieces throughout the changed (increased/decreased) plurality of data storage devices. This renders the encryption key undeterminable with less than a new or revised threshold each time the plurality is changed.
摘要:
In an embodiment, a hybrid storage array one uses two or more storage device tiers provided by solid state drives (SSDs) and hard disk drives (HDDs). Random writes are collected and written to a write cache extension, such as a portion of the SSD storage tier. The write cache extension absorbs such accesses that would otherwise be written to HDD storage directly. Data structures are created in a cache memory local to an array controller representing the location on the write cache extension to which the writes were committed and a location in the storage system where they were originally intended to go. The write cache extension can be enabled all of the time, or only when the array controller write cache experiences certain operating conditions, such as when its utilization exceeds a predetermined amount. The approach improves the overall performance of the hybrid array.
摘要:
Example embodiments respond to input/output (I/O) requests to a storage stack having a hierarchy of layers. In one such embodiment, responsive to an I/O request for data from a higher layer of the stack to a lower of the stack in hierarchy order, a first help response is generated at the lower layer and sent to the higher layer to recover the data. In turn, at the higher layer, it is determined whether a recover mechanism can fulfill the I/O request and, if not, a second help response is generated and sent to a next higher layer in the hierarchy. At the next higher layer, it is determined whether a recovery mechanism can fulfill the I/O request and, if not, a third help response is generated and sent to an even next higher layer in the hierarchy.
摘要:
In one embodiment, a method of data recovery in a storage system includes, upon failure to fulfill an I/O request for requested data to a primary volume, consulting a change set to determine whether the requested data are current in a snapshot or replica. Further, such an embodiment includes providing the requested data using the snapshot or replica without further accessing the change set, if the requested data are current in the snapshot or replica, or issuing an error or failure status, if the requested data are not current.
摘要:
The invention pertains to a method and apparatus for writing data to an array of Shingled Magnetic Recording (SMR) devices. In an embodiment of the invention a parity band configured to allow random access writes is provided. Next, data is appended sequentially to a stripe on an array of SMR devices. Then the parity band is updated to contain parity data consistent with the data appended to the stripe. In another embodiment of the invention, a shingled parity band is provided. Data is then appended sequentially to a stripe on an array of SMR devices without the user being required to write an entire stripe of data. The provided parity band is then updated to contain parity data consistent with the data that was appended to the stripe. In such an embodiment it is not always necessary to delete all of the parity data in the parity band when updating the parity band.
摘要:
Many storage devices (or drives) include a mechanism, such as a processor, to execute internal maintenance process(es) that maintain data integrity and long-term drive health. One example of such an internal maintenance process is a background media scan (BMS). However, on busy systems, the BMS may not have an opportunity to execute, which can damage long term drive performance. In one embodiment, a method includes sending a command from a host device to a storage device. The storage device can responsively run an internal maintenance process of the storage device. In one embodiment, the internal maintenance process can be an internal maintenance process such as a background media scan.