Patent classifications
G06F11/2064
Updating metadata for a synchronously replicated dataset
Synchronizing metadata among storage systems synchronously replicating a dataset, where synchronizing the metadata includes: receiving, at a first storage system of the storage systems, an I/O operation directed to the dataset; determining, in dependence upon the I/O operation, a metadata update describing a mapping of segments of content to a virtual address within a storage object, wherein the storage object includes the dataset; and synchronizing metadata on a second storage system of the storage systems by sending the metadata update to the second storage system to update a metadata representation on the second storage system in accordance with the metadata update.
Synchronous Replication Of High Throughput Streaming Data
A method for synchronous replication of stream data includes receiving a stream of data blocks for storage at a first storage location associated with a first geographical region and at a second storage location associated with a second geographical region. The method also includes synchronously writing the stream of data blocks to the first storage location and to the second storage location. While synchronously writing the stream of data blocks, the method includes determining an unrecoverable failure at the second storage location. The method also includes determining a failure point in the writing of the stream of data blocks that demarcates data blocks that were successfully written and not successfully written to the second storage location. The method also includes synchronously writing, starting at the failure point, the stream of data blocks to the first storage location and to a third storage location associated with a third geographical region.
CONSENSUS METHOD FOR A DISTRIBUTED DATABASE
A method for obtaining a valid global state for a distributed database, wherein the distributed database includes main nodes storing a complete dataset, and a plurality of subsets of nodes configured to store a part of the dataset, a. receiving a request for providing a valid global state of the distributed database, b. determining a first local state for each subset based on status information of nodes of the respective subset regarding the respective part of the dataset, c. combining these first local states of all subsets to a first combined state, d. determining a global state by the main nodes based on status information of the main nodes regarding the stored dataset, e. verifying the first combined state matching the first combined state with the global state and f. outputting the first combined state valid global state for the distributed database depending on the verification.
OPTIMIZED RECOVERY IN DATA REPLICATION ENVIRONMENTS
A method for optimizing recovery in a data replication environment is disclosed. In one embodiment, such a method includes directing I/O from a primary site to a secondary site in response to a failure at the primary site. After the primary site has recovered from the failure, the method initiates a recovery process wherein updated data elements at the secondary site are copied to the primary site. The method determines a recorded average I/O latency for a host system driving I/O to the secondary site, and calculates an expected average I/O latency for the host system driving I/O to the primary site. The method redirects I/O from the secondary site to the primary site when a difference between the expected average I/O latency and the recorded average I/O latency reaches a threshold value. A corresponding system and computer program product are also disclosed.
Systems and methods for adding active volumes to existing replication configurations
A computer-implemented method for adding active volumes to existing replication configurations may include (1) identifying a new volume to be added to an existing replication configuration that replicates a plurality of volumes to a remote storage device, (2) using interchangeable bitmaps to perform an initial synchronization of the new volume with the remote storage device before replicating the new volume to the remote storage device as part of the existing replication configuration, (3) determining that a replication log associated with the replication configuration is capable of flagging future writes by the application to the new volume without overflowing, and, upon making that determination, (4) replicating the new volume to the remote storage device as part of the existing replication configuration. Various other methods, systems, and computer-readable media are also disclosed.
Optimized read access to shared data via monitoring of mirroring operations
A method and system for optimized read access to shared data via monitoring of mirroring operations are described. A data storage system performs operations that include one controller in a dual-controller host storage appliance in an asymmetric active/active configuration receiving a request from the host for data on a logical unit number owned by the partner controller. The receiving controller, which has a mirror cache of the partner controller's memory for failure recovery, accesses the mirror cache using a data structure that was populated during previous mirror operations. If the data is found in the mirror cache, it is read from the cache and returned to the requesting host without having to contact the partner controller for the data.
Issuing operations directed to synchronously replicated data
Managing connectivity to synchronously replicated storage systems, including: identifying a plurality of storage systems across which a dataset is synchronously replicated; identifying a host that can issue I/O operations directed to the dataset; identifying a plurality of data communications paths between the host and the plurality of storage systems across which a dataset is synchronously replicated; identifying, from amongst the plurality of data communications paths between the host and the plurality of storage systems across which a dataset is synchronously replicated, one or more optimal paths; and issuing, to the host, an identification of the one or more optimal paths.
Synchronous replication
One or more techniques and/or computing devices are provided for synchronous replication. For example, synchronous replication relationships are established between a first storage object (e.g., a file, a logical unit number (LUN), a consistency group, etc.), hosted by a first storage controller, and a plurality of replication storage objects hosted by other storage controllers. In this way, a write operation to the first storage object is implemented in parallel upon the first storage object and the replication storage objects in a synchronous manner, such as using a zero-copy operation to reduce overhead otherwise introduced by performing copy operations. Reconciliation is performed in response to a failure so that the first storage object and the replication storage objects comprise consistent data. Failed write operations and replication write operations are retried, while enforcing a single write semantic. Dependent write order consistency is enforced for dependent write operations, such as overlapping write operations.
Preserving tolerance to storage device failures in a storage system
Ensuring resiliency to storage device failures in a storage system, including: determining a number of storage device failures within a particular write group that are to be tolerated by the storage system; for a plurality of datasets stored within the storage system, writing each dataset to at least a predetermined number of storage devices within the particular write group, wherein the predetermined number of storage devices is greater than the number of storage device failures within the particular write group that are to be tolerated by the storage system; and responsive to recovering from a system interruption: determining a number of readable storage devices that contain a copy of the dataset; and if the number of readable storage devices that contain a copy of the dataset is not greater than the number of failures that are to be tolerated, writing the dataset to one or more additional storage devices.
Four site data replication using host based active/active model
A system and method for data replication is provided. A host synchronously replicates data between a first local storage device and a second local storage device, the first local storage device and the second local storage device being coupled to the host. Data is then asynchronously replicated from the first local storage device and the second local storage device to at least one remote storage device. In an embodiment, each of the local storage devices may asynchronously replicate data to remote storage devices located at separate sites to provide four site data replication processing. The system described herein provides for advantageous and efficient swapping of control between hosts and storage devices located in different regions in response to disasters and/or other events affecting data storage in a particular region.