G06F11/1662

Methods and apparatus for providing hypervisor level data services for server virtualization
09785513 · 2017-10-10 · ·

A data center for data backup and replication, including a pool of multiple storage units for storing a journal of I/O write commands issued at respective times, wherein the journal spans a history window of a pre-specified time length, and a journal manager for dynamically allocating more storage units for storing the journal as the journal size increases, and for dynamically releasing storage units as the journal size decreases.

Remapping of memory in memory control architectures
09823984 · 2017-11-21 · ·

In accordance with embodiments disclosed herein, there is provided systems and methods for remapping of memory in memory control architectures. A processing device includes a processing core and a platform controller hub (PCH) coupled to the processing core. The PCH is to receive an indication of a failure associated with a first memory region of a plurality of memory regions residing in a memory. The PCH is also to interrupt an operating system to prompt for a reboot. Upon the reboot, the PCH is to remap a memory address range associated with the first memory region to a second memory region of the plurality of regions.

Intelligent access to a storage device

A method of failure detection in a storage system is performed by the storage system. The method includes detecting a failure in a nonvolatile random access memory device that is in or coupled to a storage device having storage memory. The storage system has multiple NVRAM devices and multiple storage devices that have storage memory. The method includes taking a portion or all of the NVRAM device offline. Taking a portion or all of the NVRAM device offline is responsive to detecting the failure. Taking a portion or all of the NVRAM device off-line is while keeping online the storage memory of the storage device, sufficient ones of the NVRAM devices, and sufficient ones of the storage devices to provide reliable access to data and metadata in the storage system.

Synchronizing replicated data in a storage network

method and apparatus for synchronizing replicated data in a storage network. In an embodiment, a method begins by a processing module of a computing device identifying a first storage set and a second storage set for replicated storage of a data object. The processing module initiates storage of the data object in both the first and second storage sets, and further maintains a synchronization status for the data object. The processing module determines, based at least in part on the synchronization status, to resynchronize the first storage set and the second storage set. In response to determining to resynchronize the first storage set and the second storage set, the processing module identifies a latest available revision of the data object, determines that the second storage set requires the latest available revision of the data object to maintain synchronization, and facilitates storage of the identified latest available revision of the data object in the second storage set.

Variable data replication for storage implementing data backup

A log-structured data store implementing data backup may implement variable data replication. Write requests may be received at different storage nodes maintaining respective replicas of a portion of a log for data maintained in the log-structured data store. Log records indicating the write requests may be stored in the respective replicas of the log portions at the different storage nodes. The log records may be sent to a backup data store to be durability persisted as part of an archived version of the log. At some of the storage nodes, in response to determining that the log records have been durably persisted in the backup data store, storage space for the log records may be reclaimed. In other remaining storage nodes, the log records may be retained and made accessible for servicing read requests.

ISOLATING THE INTRODUCTION OF SOFTWARE DEFECTS IN A DISPERSED STORAGE NETWORK

A dispersed storage network facilitates isolating the introduction of software defects in dispersed storage units. A search strategy is employed whereby after identifying a test failure in a current version of the memory software code, a code version since a previous successfully tested version is identified. An interim version that represents the point at which approximately one half the changes were introduced is then tested. When there is a test failure, the next interim version selected for testing represents the point at which approximately one half the changes were introduced between the first interim version tested and the current version. If no failure, a next interim version is tested that represents the point at which approximately one half the changes were introduced between the previous successfully tested version and the first interim version tested.

PEER-TO-PEER REDUNDANT ARRAY OF INDEPENDENT DISKS (RAID) LACKING A RAID CONTROLLER
20170286237 · 2017-10-05 ·

Programmable disk drives are configured within a peer-to-peer redundant array of independent disks (RAID) that lacks a RAID controller. A spare programmable disk drive not part of the RAID can monitor a given drive of the RAID. If the monitored drive fails, the spare drive can replace the failed drive within the RAID such that it becomes part of the RAID, and reconstruct the data on the programmable disk drive that has failed by communicating with the other drives of the RAID. For each data block to be reconstructed, each such other drive may receive just one piece of data and sends just one piece of data. Further, the spare drive may receive just one piece of data for each data block to be reconstructed, which is the data block as reconstructed from one of the other drives of the RAID.

METHODS FOR FILESYSTEM METADATA CACHING TO IMPROVE FAILOVER PERFORMANCE AND DEVICES THEREOF

A method, non-transitory computer readable medium, and device that assists with caching filesystem metadata to a partner non-volatile random-access memory (NVRAM) includes caching metadata related to an incoming data modifying operation generated by a client computing device to at least one storage controller device in a cluster. A service interruption event that makes a data block present in the storage device of a hosting storage node inaccessible to the client computing device is determined for during the caching. The requested metadata block from the at least one NVRAM is retrieved when the service interruption event is determined. The cache is warmed using the retrieved metadata block from the at least one NVRAM.

STORAGE CONTROL OF STORAGE MEDIA SUBJECT TO WRITE AMPLIFICATION EFFECTS
20170277608 · 2017-09-28 ·

According to one aspect of the present invention, there is provided a method for performing storage control. Member storage media and a hot spare storage medium are identified in a storage system. The member storage media are members of a storage medium array, and the hot spare storage medium is for joining in the storage medium array when a member storage medium fails. Data on a member storage medium having a write amplification effect is migrated to the hot spare storage medium. In the member storage medium having a write amplification effect, an erase operation is performed on a storage medium where the migrated data is located. Embodiments of the present invention can alleviate adverse impact caused by a write amplification effect.

Disaster Recovery As A Service Using Virtualization Technique

Embodiments of the invention relate to recovering from a disaster associated with an information technology environment. An information technology environment is replicated to a service provider. A recovery plan is generated for the environment. The recovery plan includes two processes. In response to the service provider receiving a disaster recovery request associated with the environment, the service provider executes a disaster recovery protocol. The protocol includes simultaneously executes the first and second processes. The first process operates a workload in the form of one or more containers, and the second process is a background process that creates a replica of the environment. After completion of the replica creation, the workload is migrated to the replica.