Multizone migration services
AssigneeBox, Inc.
InventorsSathish Ramasubramanian, Anna Esther Min, Kevin Greenan
Life of this patent
Estimating the term…
Abstract
Embodiments of the disclosure provide systems and methods for migrating cloud-based content between storage locations while maintaining availability of the content being migrated. Embodiments described herein allow data undergoing migration, even data that is inflight, to be accessed, edited, copied, moved, and/or deleted without downtime, blackout periods, or other restrictions.
Claims20
A method for migrating data between a plurality of storage locations, the method comprising:
- detecting, by a processor of a cloud-based storage service, initiation of migration of a set of data from an origin location of the plurality of storage locations to a destination location of the plurality of storage locations;
- identifying, by the processor of the cloud-based storage service, the set of data based on an owner identifier (ID) for the set of data, the owner ID uniquely identifying an owner of data in the set of data and stored in a record associated with the set of data and stored in a table comprising a plurality of records, each record uniquely identifying and pointing to data stored in each of the plurality of storage locations;
- creating, by the processor of the cloud-based storage service, a generated unique identifier for the set of data, the generated unique identifier associated with a pointer to the destination location;
- mapping, by the processor of the cloud-based storage service, the generated unique identifier for the set of data to the destination location;
- remapping, by the processor of the cloud-based storage service, the record associated with the set of data and stored in the table to the generated unique identifier;
- and
- copying, by the processor of the cloud-based storage service, the set of data from the origin location to the destination location, while maintaining availability of the set of data by the cloud-based storage service.
A system comprising:
- a processor;
- and
- a memory coupled with and readable by the processor and storing therein a set of instructions which, when executed by the processor, causes the processor to migrate data between a plurality of storage locations by:
- detecting initiation of migration of a set of data from an origin location of the plurality of storage locations of a cloud-based storage service to a destination location of the plurality of storage locations;
- identifying the set of data based on an owner identifier (ID) for the set of data, the owner ID uniquely identifying an owner of data in the set of data and stored in a record associated with the set of data and stored in a table comprising a plurality of records, each record uniquely identifying and pointing to data stored in each of the plurality of storage locations;
- creating a generated unique identifier for the set of data, the generated unique identifier associated with a pointer to the destination location;
- mapping the generated unique identifier for the set of data to the destination location;
- remapping the record associated with the set of data and stored in the table to the generated unique identifier;
- and
- copying the set of data from the origin location to the destination location, while maintaining availability of the set of data by the cloud-based storage service.
A non-transitory, computer-readable medium comprising a set of instructions stored therein which, when executed by a processor, causes the processor to migrate data between a plurality of storage locations by:
- detecting initiation of migration of a set of data from an origin location of the plurality of storage locations of a cloud-based storage service to a destination location of the plurality of storage locations;
- identifying the set of data based on an owner identifier (ID) for the set of data, the owner ID uniquely identifying an owner of data in the set of data and stored in a record associated with the set of data and stored in a table comprising a plurality of records, each record uniquely identifying and pointing to data stored in each of the plurality of storage locations;
- creating a generated unique identifier for the set of data, the generated unique identifier associated with a pointer to the destination location;
- mapping the generated unique identifier for the set of data to the destination location;
- remapping the record associated with the set of data and stored in the table to the generated unique identifier;
- and
- copying the set of data from the origin location to the destination location, while maintaining availability of the set of data by the cloud-based storage service.
Dependencies are inferred from the claim text.