G06F11/2071

Using Infrastructure-As-Code ('IaC') To Update A Cloud-Based Storage System
20220052910 · 2022-02-17 ·

Using Infrastructure-as-Code (‘IaC’) to update a cloud-based storage system, including: monitoring one or more performance metrics associated with a cloud-based storage system; generating, based on the performance metrics, a configuration template for the cloud-based storage system, wherein the configuration template specifies a target state for the cloud-based storage system; and updating the cloud-based storage system using the configuration template.

Storage control device and storage system

A control module that manages a segment to which data is written implements write processing and resynchronization processing using a bitmap managed for each LUN. In other words, the control module stores the bitmap for the managed LUN in a bitmap storage unit. A mirror LUN control unit sets a corresponding portion of the bitmap to 1, controls data write to a target segment and a mirror segment, and resets the bitmap to 0 when the data write to both of the segments is complete. A resynchronization control unit refers to the bitmap storage unit to perform the resynchronization processing.

PRESERVING DATA INTEGRITY DURING CONTROLLER FAILURE

Systems and processes are disclosed to preserve data integrity during a storage controller failure. In some examples, a storage controller of an active-active controller configuration can back-up data and corresponding cache elements to allow a surviving controller to construct a correct state of a failed controller's write cache. To accomplish this, the systems and processes can implement a relative time stamp for the cache elements that allow the backed-up data to be merged on a block-by-block basis.

Using mirror indicators to determine whether to mirror tracks in a data set in a primary volume mirrored to a secondary volume

Provided are a computer program product, system, and method for using mirror indicators to determine whether to mirror tracks in a data set in a primary volume mirrored to a secondary volume. A table is read. The table is maintained by a primary controller managing the primary volume that includes a mirror indicator for each of a plurality of tracks in at least one data set configured in the primary volume indicating whether a track is to be mirrored to the secondary volume. Record sets are read from a cache of the primary controller for the tracks in primary volume having the mirror indicators in the table indicating that the track is to be mirrored. The write data in the read record sets is applied to tracks in the secondary volume mirroring the tracks in the primary volume.

GRANULAR CONSISTENCY GROUP REPLICATION
20170249222 · 2017-08-31 ·

One or more techniques and/or computing devices are provided for granular replication for data protection. For example, a first storage controller may host a first volume. A consistency group, comprising a subset of files, logical unit numbers, and/or other data of the first volume, is defined through a consistency group configuration. A baseline transfer, using a baseline snapshot of the first volume, is used to create a replicated consistency group within a second volume hosted by a second storage controller. In this way, an arbitrary level of granularity is used to synchronize/replicate a subset of the first volume to the second volume. If a synchronous replication relationship is specified, then one or more incremental transfer are performed and a synchronous replication engine is implemented. If an asynchronous replication relationship is specified, then snapshots are used to identify delta data of the consistency group for updating the replication consistency group.

REPLICATING DATA USING DUAL-PORT NON-VOLATILE DUAL IN-LINE MEMORY MODULES

According to an example, data may be replicated using a dual-port nonvolatile dual in-line memory module (NVDIMM). A processor may request, through a first port of the dual-port NVDIMM, to store data to universal memory of the dual-port NVDIMM and to commit the data to remote storage according to a high-availability storage capability of the dual-port NVDIMM. The process may then receive a notification from the dual-port NVDIMM that the data has been transparently committed to the remote storage through a second port of the dual-port NVDIMM.

Systems and Methods to Maintain Consistent High Availability and Performance in Storage Area Networks
20170220249 · 2017-08-03 ·

Embodiments of the present disclosure enable high availability and performance in view of storage controller failure. A storage system includes three or more controllers that may be distributed in a plurality of enclosures. The controllers are in high availability pairs on a per volume basis, with volumes and corresponding mirror targets distributed throughout the storage system. When a controller fails, other controllers in the system detect the failure and assess whether one or more volumes and/or mirror targets are affected. If no volumes/mirror targets are affected, then write-back caching continues. If volume ownership is affected, then a new volume owner is selected so that write-back caching may continue. If mirror target ownership is affected, then a new mirror target is selected so that write-back caching may continue. As a result, write-back caching availability is increased to provide low latency and high throughput in degraded mode as in other modes.

Copying a cloud-based storage system

Cloning storage systems in a cloud computing environment, including: receiving a request to create a cloud-based storage system; retrieving, from cloud-based object storage, one or more objects to include in the cloud-based storage system; and creating the cloud-based storage system, including storing, in block storage of the cloud-based storage system, data contained in the one or more objects retrieved from the cloud-based object storage.

Storage controller, storage system, and non-transitory computer-readable storage medium having stored therein control program
09720621 · 2017-08-01 · ·

A storage controller performing a copy process in which data stored in a copy source storage area is copied to a copy destination storage area, the storage controller includes a processor, wherein the processor receives a transfer command for giving an instruction for transferring data stored in a first area of the copy source storage area to a second area of the copy source storage area, starts a transfer process in which transfer data from the first area is read and is written into the second area in accordance with reception of the transfer command, and starts copying the transfer data into a corresponding area of the copy destination storage area that corresponds to the second area in the copy process together with the starting of the transfer process.

Storing indicators of unreferenced memory addresses in volatile memory

In example implementations, unreferenced memory addresses in a segment of a storage volume may be identified. Access to the segment of the storage volume may be controlled by one of a plurality of storage volume controllers (SVCs). The plurality of SVCs may control access to respective segments of the storage volume. Indicators of the identified unreferenced memory addresses may be stored in a volatile memory in the one of the plurality of SVCs. In response to an input/output (I/O) command from a host, data may be written to one of the identified unreferenced memory addresses corresponding to one of the indicators stored in the volatile memory. After the data has been written, the one of the indicators may be deleted from the volatile memory. The one of the identified unreferenced memory addresses may not have been made available to other SVCs after being identified.