Data replication in memory systems
AssigneeHewlett Packard Enterprise Development LP
InventorsLuis Miguel Vaquero Gonzalez, Suksant Sae Lor
Life of this patent
Estimating the term…
Abstract
The present disclosure discloses memory systems that comprise a network of logically-connected, routable memory modules each comprising an individual memory-address space, in which the memory-address spaces of the individual memory modules are aggregated and exposed as a single memory component to components external to the memory system seeking to write or read data objects in the memory system, and the memory systems are configured to perform data replication according to a lazy data replication protocol to hold plural replicas of data objects in the memory system.
Claims15
A memory system comprising a network of logically-connected memory components each comprising an individual memory-address space, wherein:
- the memory-address spaces of the individual memory components are aggregated and exposed as a single memory component to components external to the memory system seeking to write or read data objects in the memory system;
- and
- the memory system is configured to implement a lazy data replication protocol to hold plural replicas of data objects in the memory system.
In a memory system that holds replicated data objects in n replicas, one of said n replicas of a data object being a primary replica, the other replicas of the same data object being secondary replicas, where n is a positive integer equal to or greater than 2 and n need not be the same for different data objects, and the memory system comprises an update-synchronization manager and a network of logically-connected memory components each comprising an individual memory-address space, wherein the memory-address spaces of the individual memory components are aggregated and exposed as a single memory component to components external to the memory system seeking to write or read data objects in the memory system, a memory component comprising:
- a memory module to hold a primary replica of a data object;
- a receiving unit to receive update requests requesting updating of said primary replica of the data object, and
- a transmitting unit responsive to completion of updating of said primary replica to transmit an update notification to the update-synchronization manager of the memory system.
In a memory system that holds replicated data objects in n replicas, one of said n replicas of a data object being a primary replica, the other replicas of the same data object being secondary replicas, where n is a positive integer equal to or greater than 2 and n need not be the same for different data objects, and the memory system comprises an update-synchronization manager and a network of logically-connected memory components each comprising an individual memory-address space, wherein the memory-address spaces of the individual memory components are aggregated and exposed as a single memory component to components external to the memory system seeking to write or read data objects in the memory system, a memory component comprising:
- a memory module to hold a replica of a data object whose primary replica is held in another memory component of said memory system;
- a receiving unit to receive, from said update-synchronization manager of said memory system, update instructions directing updating of said replica held in said memory module, said update instructions corresponding to updates that have been performed on said primary replica, and
- an update-implementation unit to implement received update instructions in the same order as said updates were implemented on the primary replica.
A method of performing data replication in a memory system that holds replicated data objects in n replicas, one of said n replicas of a data object being a primary replica, the other replicas of the same data object being secondary replicas, where n is a positive integer equal to or greater than 2 and n need not be the same for different data objects, and the memory system comprises a plurality of logically-connected memory components modules, the method comprising:
- receiving requests to update respective data objects,
- implementing updates of data objects first on the respective primary replica,
- responsive to completion of updating of primary replicas, transmitting respective update notifications to a synchronization manager of the memory system,
- logging in a list, by the synchronization manager, update information indicative of updates implemented on primary replicas, items of update information relating to a primary replica of a given data object being ordered in the list according to the order of implementation of the update on said primary replica,
- transmitting, by the synchronization manager, update information of the ordered list to memory modules of the memory system, and
- implementing updates of respective secondary replicas of a data object in the same order as the updating of the primary replica of the same data object, using the transmitted update information.
Dependencies are inferred from the claim text.