Patent ID: 8782235

Claim:
A resource migration system, comprising: a plurality of servers communicably connected with each other, wherein a first server which is one of the plurality of servers includes: a first main memory to store first memory data divided into a plurality of segments each having a predefined size, a first storage to store a set of first data segments, each of the first data segments being formed by copying each of the plurality of segments of the first memory data stored in the first main memory, and a first memory data manager to manage the first data segments stored in the first storage, wherein a second server which is another of the plurality of servers includes: a second main memory to store second memory data divided into a plurality of segments each having the predefined size, a second storage to store a set of second data segments, each of the second data segments being formed by copying each of the plurality of segments of the second memory data stored in the second main memory, and a second memory data manager to manage the second data segments stored in the second storage, said second memory data manager: receiving resource data regarding the first data segments from the first server determining whether each of the first data segments is able to be replaced by any of the second data segments, receiving from the first server a portion of the first data segments which are not replaceable by any of the second data segments, and reconstructing the first memory data by combining a portion of second data segments which replace first data segments that have been determined to be replaceable and the portion of the first data segments which are not replaceable by any of the second data segments, wherein the first memory data manager: assigns first memory identifiers to the first data segments to identify each of the first data segments, consolidates the first data segments by reassigning the first memory identifiers so that first data segments having identical contents data are assigned with an identical first memory identifier, and transmits to the second server the first memory identifiers assigned to the first data segments to be migrated, and the second memory data manager: assigns second memory identifiers to the second data segments to identify each of the second data segments, consolidates the second data segments by reassigning the second memory identifiers so that second data segments having identical contents data are assigned with an identical second memory identifier, receives the first memory identifiers transmitted from the first server, determines whether each of the first data segments is replaceable by any of the second data segments, by comparing received first memory identifiers with the second memory identifiers, and receives from the first server the portion of the first data segments which have been determined to be irreplaceable by any of the second data segments, in response to transmitting first memory identifiers of the some of the first data segments.