Efficient live-migration of remotely accessed data
First Claim
1. A method performed by a data processing system, the method comprising:
- storing a mapping for a data processing process that processes data stored in a first physical machine, the data stored according to a plurality of data subsets that are each exclusive of each other;
for each data subset, logically mapping in the mapping 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 for the data processing process according to the logical addressing;
in response to a determination that a first data subset stored on the first physical machine is to be migrated to a second physical machine separate from the first physical machine, blocking read and write access for the data processing process to the first data subset while maintaining read and write access for the data processing process to the other data subsets; and
in response to a migration of the first data subset from the first physical machine to the second physical machine to store the data subset on the second physical machine, updating the mapping by logically mapping an address range for the first data subset on the second physical machine to the respective logical address range for the data processing process.
1 Assignment
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
16 Claims
-
1. A method performed by a data processing system, the method comprising:
-
storing a mapping for a data processing process that processes data stored in a first physical machine, the data stored according to a plurality of data subsets that are each exclusive of each other; for each data subset, logically mapping in the mapping 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 for the data processing process according to the logical addressing; in response to a determination that a first data subset stored on the first physical machine is to be migrated to a second physical machine separate from the first physical machine, blocking read and write access for the data processing process to the first data subset while maintaining read and write access for the data processing process to the other data subsets; and in response to a migration of the first data subset from the first physical machine to the second physical machine to store the data subset on the second physical machine, updating the mapping by logically mapping an address range for the first data subset on the second 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. A system, comprising:
-
a data processing device; and a non-transitory computer-readable memory in data communication with the data processing device and storing instructions executable by the data processing device and that upon such execution cause the data processing device to perform operations comprising; storing a mapping for a data processing process that processes data stored in a first physical machine, the data stored according to a plurality of data subsets that are each exclusive of each other; for each data subset, logically mapping in the mapping 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; in response to a determination that a first data subset stored on the first physical machine is to be migrated to a second physical machine separate from the first physical machine, blocking read and write access for the data processing process to the first data subset while maintaining read and write access for the data processing process to the other data subsets; and in response to a migration of the first data subset from the first physical machine to the second physical machine to store the data subset on the second physical machine, updating the mapping by logically mapping an address range for the first data subset on the second physical machine to the respective logical address range for the data processing process. - View Dependent Claims (13, 14, 15)
-
-
16. A non-transitory computer-readable memory in data communication with the data processing device and storing instructions executable by the data processing device and that upon such execution cause the data processing device to perform operations comprising:
-
storing a mapping for a data processing process that processes data stored in a first physical machine, the data stored according to a plurality of data subsets that are each exclusive of each other; for each data subset, logically mapping in the mapping 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; in response to a determination that a first data subset stored on the first physical machine is to be migrated to a second physical machine separate from the first physical machine, blocking read and write access for the data processing process to the first data subset while maintaining read and write access for the data processing process to the other data subsets; and in response to a migration of the first data subset from the first physical machine to the second physical machine to store the data subset on the second physical machine, updating the mapping by logically mapping an address range for the first data subset on the second physical machine to the respective logical address range for the data processing process.
-
Specification