Optimizing generalized transfers between storage systems
AssigneePure Storage, Inc.
InventorCary Sandvig
Life of this patent
Estimating the term…
Abstract
Optimizing generalized transfers between storage systems including identifying, by a first storage system, a request to transfer source data from the first storage system to a second storage system, wherein the first storage system implements a first storage architecture and the second storage system implements a second storage architecture; identifying difference information between the source data that is stored on the first storage system using the first storage architecture and existing data that is stored on the second storage system using the second storage architecture; and transferring, in dependence upon the difference information, a subset of the source data from the first storage system to the second storage system.
Claims17
A method comprising:
- identifying, by a first storage system, a request to transfer source data from the first storage system to a second storage system, wherein the first storage system implements a first storage architecture and the second storage system implements a second storage architecture, wherein the first storage architecture is a structured data architecture and the second storage architecture is an unstructured data architecture;
- identifying, using block references that map to blocks of data across the first storage architecture and the second storage architecture, a first plurality of blocks of source data that is stored on the first storage system using the first storage architecture and a second plurality of blocks of existing data that is stored on the second storage system using the second storage architecture;
- and
- transferring, in dependence upon the identified first plurality of blocks and the second plurality of blocks, a subset of the source data from the first storage system to the second storage system.
An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
- identifying, by a first storage system, a request to transfer source data from the first storage system to a second storage system, wherein the first storage system implements a first storage architecture and the second storage system implements a second storage architecture, wherein the first storage architecture is a structured data architecture and the second storage architecture is an unstructured data architecture;
- identifying, using block references that map to blocks of data across the first storage architecture and the second storage architecture, a first plurality of blocks of source data that is stored on the first storage system using the first storage architecture and a second plurality of blocks of existing data that is stored on the second storage system using the second storage architecture;
- and
- transferring, in dependence upon the identified first plurality of blocks and the second plurality of blocks, a subset of the source data from the first storage system to the second storage system.
A computer program product disposed upon a computer readable storage medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:
- identifying, by a first storage system, a request to transfer source data from the first storage system to a second storage system, wherein the first storage system implements a first storage architecture and the second storage system implements a second storage architecture, wherein the first storage architecture is a structured data architecture and the second storage architecture is an unstructured data architecture;
- identifying, using block references that map to blocks of data across the first storage architecture and the second storage architecture, a first plurality of blocks of source data that is stored on the first storage system using the first storage architecture and a second plurality of blocks of existing data that is stored on the second storage system using the second storage architecture;
- and
- transferring, in dependence upon the identified first plurality of blocks and the second plurality of blocks, a subset of the source data from the first storage system to the second storage system.
Dependencies are inferred from the claim text.