Patent application number | Description | Published |
20110066770 | Managing I/O Request in a Storage System - The present invention relates to managing I/O requests in a storage system. By dynamically changing the scheduling parameters to achieve optimal turn around time for I/O requests pending for processing at a component in the storage system. The scheduling parameters are changed based on a feedback mechanism. The turn around time of the I/O request are calculated as the ratio of I/O request processing rate and the average number of I/O requests in the component. | 03-17-2011 |
20110119679 | METHOD AND SYSTEM OF AN I/O STACK FOR CONTROLLING FLOWS OF WORKLOAD SPECIFIC I/O REQUESTS - A method and system of a host device hosting multiple workloads for controlling flows of I/O requests directed to a storage device is disclosed. In one embodiment, a type of a response from the storage device reacting to an I/O request issued by an I/O stack layer of the host device is determined. Then, a workload associated with the I/O request is identified among the multiple workloads based on the response to the I/O request. Further, a maximum queue depth assigned to the workload is adjusted based on the type of the response, where the maximum queue depth is a maximum number of I/O requests from the workload which are concurrently issuable by the I/O stack layer. | 05-19-2011 |
20110302337 | PATH SELECTION FOR APPLICATION COMMANDS - Systems and methods for path selection for application commands are described. To this end, information associated with at least one application command that were processed at least one port of a target device is received. For a subsequent application command, a set of ports of the target device is determined. In one implementation, the set of ports is determined based on information associated with the subsequent application command. Once the set of ports is determined, the subsequent application command is directed to a port selected from the set of ports. | 12-08-2011 |
20110314182 | PRIORITIZING INPUT/OUTPUTS AT A HOST BUS ADAPTER - A method generates input/output (IO) commands by plural different applications that execute on a host. The method prioritizes the applications by inserting different classifiers into the IO commands at a host bus adapter (HBA) located in the host. A storage device receives the IO commands and processes the IO commands according to priorities based on the classifiers for the applications. | 12-22-2011 |
20130055283 | Workload Performance Control - Methods to provide workload performance control are described herein. Performance statistics for a plurality of workloads are obtained for a second time interval, which includes a plurality of first time intervals. The performance statistics is based on monitored data ( | 02-28-2013 |
20130219214 | ACCELERATED REBUILD AND ZERO TIME REBUILD IN RAID SYSTEMS - A RAID data storage system incorporates permanently empty blocks into each stripe, distributed among all the data storage devices, to accelerate rebuild time by reducing the number of blocks that need to be rebuilt in the event of a failure. | 08-22-2013 |
20130339786 | SMART ACTIVE-ACTIVE HIGH AVAILABILITY DAS SYSTEMS - A high availability DAS system uses a solid state cache to provide near active-active performance in a DAS duster, while retaining the implementation simplicity of active-passive or dual active system. Each node in the duster may include a solid state cache that stores hot I/O in an active-active mode, which allows the data to be read from or written to the underlying dual-active or active/passive DAS RAID system only when access to the “hot Region” cools down or in the case of Cache Miss. The hot I/O data includes hot read data that accumulated dynamically regardless of ownership of the drives where the hot read data is permanently stored. The hot I/O data also includes hot write data that is mirrored across the solid state cache memories to avoid potential dirty write data conflicts and also to provide High Availability in case of server failures. | 12-19-2013 |
20140089545 | LEASED LOCK IN ACTIVE-ACTIVE HIGH AVAILABILITY DAS SYSTEMS - A method and system for IO processing in a storage system is disclosed. In accordance with the present disclosure, a controller may take long term “lease” of a portion (e.g., an LBA range) of a virtual disk of a RAID system and then utilize local locks for IOs directed to the leased portion. The method and system in accordance with the present disclosure eliminates inter-controller communication for the majority of IOs and improves the overall performance for a High Availability Active-Active DAS RAID system. | 03-27-2014 |
20140173330 | Split Brain Detection and Recovery System - The invention provides for split brain detection and recovery in a DAS cluster data storage system through a secondary network interconnection, such as a SAS link, directly between the DAS controllers. In the event of a communication failure detected on the secondary network, the DAS controllers initiate communications over the primary network, such as an Ethernet used for clustering and failover operations, to diagnose the nature of the failure, which may include a crash of a data storage node or loss of a secondary network link. Once the nature of the failure has been determined, the DAS controllers continue to serve all I/O from the surviving nodes to honor high availability. When the failure has been remedied, the DAS controllers restore any local cache memory that has become stale and return to regular I/O operations. | 06-19-2014 |
20140344523 | System and Method of Selective READ Cache Retention for a Rebooted Node of a Multiple-Node Storage Cluster - The disclosure is directed to a system and method for managing READ cache memory of at least one node of a multiple-node storage cluster. According to various embodiments, a cache data and a cache metadata are stored for data transfers between a respective node (hereinafter “first node”) and regions of a storage cluster. When the first node is disabled, data transfers are tracked between one or more active nodes of the plurality of nodes and cached regions of the storage cluster. When the first node is rebooted, at least a portion of valid cache data is retained based upon the tracked data transfers. Accordingly, local cache memory does not need to be entirely rebuilt each time a respective node is rebooted. | 11-20-2014 |
20140351523 | System and Method of Rebuilding READ Cache for a Rebooted Node of a Multiple-Node Storage Cluster - The disclosure is directed to a system and method for managing cache memory of at least one node of a multiple-node storage cluster. According to various embodiments, a first cache data and a first cache metadata are stored for data transfers between a respective node and regions of a storage cluster receiving at least a first selected number of data transfer requests. When the node is rebooted, a second (new) cache data is stored to replace the first (old) cache data. The second cache data is compiled utilizing the first cache metadata to identify previously cached regions of the storage cluster receiving at least a second selected number of data transfer requests after the node is rebooted. The second selected number of data transfer requests is less than the first selected number of data transfer requests to enable a rapid build of the second cache data. | 11-27-2014 |
20150019822 | System for Maintaining Dirty Cache Coherency Across Reboot of a Node - Nodes in a data storage system having redundant write caches identify when one node fails. A remaining active node stops caching new write operations, and begins flushing cached dirty data. Metadata pertaining to each piece of data flushed from the cache is recorded. Metadata pertaining to new write operations are also recorded a corresponding data flushed immediately when the new write operation involves data in the dirty data cache. When the failed node is restored, the restored node removes all data identified by the metadata from a write cache. Removing such data synchronizes the write cache with all remaining nodes without costly copying operations. | 01-15-2015 |
20150026403 | SELF-ADJUSTING CACHING SYSTEM - An apparatus having a cache and a controller is disclosed. The controller is configured to (i) gather a plurality of statistics corresponding to a plurality of requests made from one or more hosts to access a memory during an interval, (ii) store data of the requests selectively in the cache in response to a plurality of headers and (iii) adjust one or more parameters in the headers in response to the statistics. The requests and the parameters are recorded in the headers. | 01-22-2015 |