Efficient live-migration of remotely accessed data
First Claim
1. A method performed by a data processing system comprising a plurality of physical machines, the method comprising:
- storing, in a first physical machine, data for a data processing process running on a second physical machine that is separate from the first physical machine, the storing data comprising storing the data according to a plurality of data subsets that are each exclusive of each other;
for each data subset, logically mapping in a mapping, by the data processing process, an address range for the data subset on the first physical machine to a respective logical address range for the data processing process;
enabling read and write access to the data by the data processing process according to the logical addressing;
determining that the data stored on the first physical machine for the data processing process is to be migrated to a third physical machine separate from the first physical machine and the second physical machine, and in response, separately migrating the data in first data subsets, the migrating of each first data subset comprising;
selecting a data subset as a first data subset stored on the first physical machine to be migrated to the third physical machine separate from the first physical machine and the second physical machine, and in response;
blocking read and write access by the data processing process to the first data subset while maintaining read and write access by the data processing process to the other data subsets of the data;
migrating, from the first physical machine to the third physical machine, the first data subset to store the data subset on the third physical machine;
updating the mapping by logically mapping, by the data processing process, an address range for the first data subset on the third physical machine to the respective logical address range for the data processing process.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for migrating data from a first storage system to a second storage system. That data is for a process (e.g., a virtual machine, application, or some other process) operating on a computer system that is separate from the first storage system and the second storage system. That data is stored according to data subsets that are each exclusive of each other. As each data set is migrated, access to the data set by the process is precluded, but access for the remaining data sets is not affected. Once the data migration is complete, access to the data set by the process is restored.
-
Citations
21 Claims
-
1. A method performed by a data processing system comprising a plurality of physical machines, the method comprising:
-
storing, in a first physical machine, data for a data processing process running on a second physical machine that is separate from the first physical machine, the storing data comprising storing the data according to a plurality of data subsets that are each exclusive of each other; for each data subset, logically mapping in a mapping, by the data processing process, an address range for the data subset on the first physical machine to a respective logical address range for the data processing process; enabling read and write access to the data by the data processing process according to the logical addressing; determining that the data stored on the first physical machine for the data processing process is to be migrated to a third physical machine separate from the first physical machine and the second physical machine, and in response, separately migrating the data in first data subsets, the migrating of each first data subset comprising; selecting a data subset as a first data subset stored on the first physical machine to be migrated to the third physical machine separate from the first physical machine and the second physical machine, and in response; blocking read and write access by the data processing process to the first data subset while maintaining read and write access by the data processing process to the other data subsets of the data; migrating, from the first physical machine to the third physical machine, the first data subset to store the data subset on the third physical machine; updating the mapping by logically mapping, by the data processing process, an address range for the first data subset on the third physical machine to the respective logical address range for the data processing process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 17, 18, 20)
-
-
14. A system, comprising:
-
a first physical machine storing data according to a plurality of data subsets that are each exclusive of each other; a second physical machine that is separate from the first physical machine and a virtual machine on the second physical machine having read and write access to the data stored on the first physical machine and that, for each data subset, logically maps, in a mapping, an address range for the data subset on the first physical machine to a respective logical address range for the virtual machine; determining that the data stored on the first physical machine for the virtual machine is to be migrated to a third physical machine separate from the first physical machine and the second physical machine, and in response, separately migrating the data in first data subsets, the migrating of each first data subset comprising; selecting a data subset as a first data subset stored on the first physical machine to be migrated to a third physical machine separate from the first physical machine and the second physical machine; the first data subset is migrated from the first physical machine to the third physical machine; read and write access to the first data subset for the virtual machine is blocked during the migration while read and write access by the virtual machine to the other data subsets of the data is maintained; and the mapping is updated by the virtual machine to logically map an address range for the first data subset on the third physical machine to the respective logical address range for the virtual machine; and read and write access to the first data subset for the virtual machine is restored after the migration of the first data subset from the first physical machine to the third physical machine. - View Dependent Claims (16, 19, 21)
-
Specification