System and methods for implementing a server-based hierarchical mass storage system
AssigneeMicrosoft Technology Licensing, LLC
InventorsMaurilio Cometto, Gururaj Pangal, Ady Degany
Life of this patent
Estimating the term…
Abstract
Setting up and supporting the computer infrastructure for a remote satellite office is a difficult task for any information technology department. To simplify the task, an integrated server system with a hierarchical storage system is proposed. The hierarchical storage system includes the ability to store data at an off-site cloud storage service. The server system is remotely configurable and thus allows the server to be configured and populated with data from a remote location.
Claims20
A method comprising:
- in a system connected to a network connection and comprising a hierarchical storage stack for storing data, wherein the hierarchical storage stack comprises a local data storage layer for storing data locally in the system and a remote data storage layer that stores data with a remote data storage service;
- receiving a request to back-up a data volume;
- creating a snapshot volume of the data volume in the system, wherein the snapshot volume comprises a set of data chunks and wherein creating the snapshot volume comprises:
- dividing a first set of data chunks into a first set of data slices, creating a first set of data slice fingerprints for said first set of data slices, and placing said first set of fingerprints in said fingerprint data map;
- and
- copying a second set of existing data slice fingerprints for a second set of existing data slices from a second set of data chunks in said snapshot volume;
- and
- copying data from the snapshot volume stored in the local data storage layer to the remote data storage service.
A system comprising:
- a processor;
- a network interface;
- a hierarchical storage stack for storing data comprising at least one local data storage layer for storing data locally in the system and a remote data storage layer that stores data with a remote data storage service;
- and
- memory storing instructions storing a set of computer-executable instructions that, when executed by the processor, cause the system to perform the operations of:
- receiving a request to back-up a data volume;
- creating a snapshot volume of the data volume in the local data storage layer, wherein the snapshot volume comprises data chunks;
- creating a fingerprint of the snapshot volume by:
- dividing a first set of the data chunks into a first set of data slices, creating a first set of data slice fingerprints for the first set of data slices, and placing the first set of fingerprints in a fingerprint data map;
- and
- copying a second set of existing data slice fingerprints for a second set of existing data slices from a second set of the data chunks in the snapshot volume;
- and
- copying data from the snapshot volume to the remote data storage layer.
A non-transitory computer-readable medium storing a set of computer-executable instructions that, when executed by a processor, cause a computing device to perform the operations of:
- installing a system comprising a hierarchical storage stack for storing data, the hierarchical storage stack comprising a local data storage layer for storing data locally in the system and a remote data storage layer that stores data with a remote data storage service;
- receiving a request to back-up a data volume;
- creating a snapshot volume of the data volume in the local data storage layer, wherein the snapshot volume comprises data chunks;
- creating a fingerprint of the snapshot volume by:
- dividing a first set of the data chunks into a first set of data slices, creating a first set of data slice fingerprints for the first set of data slices, and placing the first set of fingerprints in a fingerprint data map;
- and
- copying a second set of existing data slice fingerprints for a second set of existing data slices from a second set of the data chunks in the snapshot volume;
- and
- copying data from the snapshot volume in the local data storage layer to the remote data storage layer.
Dependencies are inferred from the claim text.