Data replication system
US-9251198-B2 · Feb 2, 2016 · US
US9928002B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9928002-B2 |
| Application number | US-201615099865-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 15, 2016 |
| Priority date | Apr 23, 2012 |
| Publication date | Mar 27, 2018 |
| Grant date | Mar 27, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A data storage system includes a generic snapshot interface, allowing for integration with a wide variety of snapshot-capable storage devices. The generic interface can be a programming interface (e.g., an application programming interface [API]). Using the snapshot interface, storage device vendors can integrate their particular snapshot technology with the data storage system. For instance, the data storage system can access a shared library of functions (e.g., a dynamically linked library [DLL]) provided by the vendor (or another by appropriate entity) and that complies with the specifications of the common programming interface. And by invoking the appropriate functions in the library, the data storage system implements the snapshot operation on the storage device.
Opening claim text (preview).
What is claimed is: 1. A data storage system, comprising: a source system in communication with a destination system comprising a first storage device, the first storage device configured to perform snapshot operations; at least one software application executing on the source system and generating production data; a snapshot management module executing on one or more processors and configured to: receive a request to perform a snapshot operation involving a stored version of at least a portion of the production data that resides on the first storage device; determine that the first storage device is a first type of storage device which corresponds to a particular vendor and/or a particular product from the particular vendor; determine that the source system does not include pre-configured functionality for causing the first storage device to perform the snapshot operation; communicate with the destination system to identify one or more functions for performing the requested snapshot operation that are compatible with a programming interface residing on the source system; and invoke an instance of the one or more identified functions using the programming interface, wherein a snapshot engine residing on the destination system is responsive to the invoking of the instance of the one or more identified functions to perform the requested snapshot operation. 2. The data storage system of claim 1 , wherein the instance of the one or more identified functions is accessed from a shared library associated with the first storage device. 3. The data storage system of claim 2 , wherein the shared library is located at the destination system and is accessed by the source system. 4. The data storage system of claim 1 , wherein the first storage device is configured to perform hardware snapshots. 5. The data storage system of claim 1 , wherein the requested snapshot operation includes one or more of a snapshot creation operation, a snapshot mount operation, and a snapshot revert operation. 6. The data storage system of claim 1 , wherein the snapshot management module resides on the source system. 7. The data storage system of claim 1 , wherein the source system is in communication with a second storage device of a second type that is configured to perform snapshot operations, and wherein the snapshot management module is further configured to: receive a request to perform a second snapshot operation involving a stored version of at least a portion of the production data that resides on the second storage device; determine that the second storage device is a second type of storage device different from the first type of storage device; determine that the source system includes one or more pre-configured functions for causing the second storage device to perform the second snapshot operation; and instruct a snapshot engine residing on the second storage device to perform the requested second snapshot operation based at least in part on the one or more pre-configured functions. 8. The data storage system of claim 7 , wherein the one or more identified functions are provided by a first vendor and the one or more pre-configured functions provided by a second vendor. 9. The data storage system of claim 1 , wherein the snapshot management module includes pre-configured functionality for causing storage devices of another type to perform snapshot operations without using the programming interface. 10. The data storage system of claim 9 , wherein the pre-configured functionality includes one or more functions that are not compatible with the programming interface. 11. The data storage system of claim 1 , wherein the snapshot management module resides on one or more processors of the source system. 12. The data storage system of claim 1 , wherein the snapshot management module resides on one or more processors of a proxy computing device that is separate from the source system. 13. A method of performing one or more snapshot operations on production data generated in a data storage system, the method comprising: receiving a request to perform a snapshot operation involving a stored version of at least a portion of production data that resides on a first storage device of a destination system, the production data generated by at least one software application executing on a source system that is in communication with the first storage device, the first storage device configured to perform snapshot operations; determining that the first storage device is a first type of storage device which corresponds to a particular vendor and/or a particular product from the particular vendor; determining that the source system does not include pre-configured functionality for causing the first storage device to perform the snapshot operation; communicating with the destination system to identify one or more functions for performing the requested snapshot operation that are compatible with a programming interface residing on the source system; and invoking, using one or more computer processors, an instance of the one or more identified functions using the programming interface, wherein a snapshot engine residing on the destination system is responsive to the invoking of the instances of the one or more identified functions to perform the requested snapshot operation. 14. The method of claim 13 , further comprising accessing the instance of the one or more identified functions from a shared library associated with the first storage device. 15. The method of claim 14 , wherein the shared library is located at the destination system and is accessed by the source system. 16. The method of claim 13 , wherein the first storage device is configured to perform hardware snapshots. 17. The method of claim 13 , wherein the requested snapshot operation includes one or more of a snapshot creation operation, a snapshot mount operation, and a snapshot revert operation. 18. The method of claim 13 , wherein the source system is in communication with a second storage device of a second type and that is configured to perform snapshot operations, the method further comprising: receiving a request to perform a second snapshot operation involving a stored version of at least a portion of the production data that resides on the second storage device; determining that the second storage device is a second type of storage device different from the first type of storage device; determining that the source system includes one or more pre-configured functions for causing the second storage device to perform the second snapshot operation; and instructing a snapshot engine residing on the second storage device to perform the requested second snapshot operation based at least in part on the one or more pre-configured functions. 19. The method of claim 18 , wherein the one or more identified functions are provided by a first vendor and the one or more pre-configured functions provided by a second vendor. 20. The method of claim 13 , wherein the source system includes pre-configured functionality for causing storage devices of another type to perform snapshot operations without using the programming interface.
Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title
Plurality of storage devices · CPC title
Physics · mapped topic
Physics · mapped topic
Error detection or correction of the data by redundancy in operations (error detection or correction of the data by redundancy in hardware G06F11/16) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.