APPARATUS METHOD AND SYSTEM FOR ASYNCHRONOUS REPLICATION OF A HIERARCHICALLY-INDEXED DATA STORE
First Claim
1. An apparatus for asynchronous file-based replication of a hierarchically-indexed data:
- store, the apparatus comprising;
a hierarchically indexed data store configured to store data in a hierarchical structure corresponding to a file system;
an operating system configured to access the hierarchically indexed data store and initiate write operations to the hierarchically indexed data store;
a first in-memory block map for tracking changes to the hierarchically indexed data store, the first in-memory block map comprising a plurality of status indicators configured to indicate changes to blocks on the hierarchically indexed data store;
a second in-memory block map for tracking changes to the hierarchically indexed data store, the second in-memory block map comprising a plurality of status indicators configured to indicate changes to blocks on the hierarchically indexed data store;
a tracking module comprising a file system driver configured to monitor write operations initiated by the operating system and track file regions that have changed since a first point-in-time replication instance by updating the status indicators in the second in-memory block map in a written order;
a replication module configured to asynchronously communicate data contained within file regions that have changed to a replication target as indicated by the first in-memory block map;
the file system driver further configured to access the first in-memory block map instead of the second in-memory block map in response to a second point-in-time replication instance;
the replication module further configured to access the second in-memory block map instead of the first in-memory block map in response to the second point-in-time replication instance and asynchronously communicate data contained within file regions-that have changed to the replication target as indicated by the second in-memory block map, wherein the data is communicated in an order that is independent of the written order.
3 Assignments
0 Petitions
Accused Products
Abstract
Changes such as write operations on a replication source comprising a hierarchically-indexed file system and associated data store are tracked and aggregated over a point-in-time image replication interval and communicated to a replication target. The replication target receives the changes, conducts operations to make the changes on a target volume or portion thereof, and conducts a point-in-time image replication operation to synchronize the replication target with the replication source. In the present invention the advantages of replication techniques developed for log-structured file systems are provided to systems with conventional hierarchical file systems. The invention also facilitates maintaining point-in-time retrievable images of a volume or portion thereof on a target volume while reducing the bandwidth and processing burden associated with replication.
37 Citations
24 Claims
-
1. An apparatus for asynchronous file-based replication of a hierarchically-indexed data:
- store, the apparatus comprising;
a hierarchically indexed data store configured to store data in a hierarchical structure corresponding to a file system; an operating system configured to access the hierarchically indexed data store and initiate write operations to the hierarchically indexed data store; a first in-memory block map for tracking changes to the hierarchically indexed data store, the first in-memory block map comprising a plurality of status indicators configured to indicate changes to blocks on the hierarchically indexed data store; a second in-memory block map for tracking changes to the hierarchically indexed data store, the second in-memory block map comprising a plurality of status indicators configured to indicate changes to blocks on the hierarchically indexed data store; a tracking module comprising a file system driver configured to monitor write operations initiated by the operating system and track file regions that have changed since a first point-in-time replication instance by updating the status indicators in the second in-memory block map in a written order; a replication module configured to asynchronously communicate data contained within file regions that have changed to a replication target as indicated by the first in-memory block map; the file system driver further configured to access the first in-memory block map instead of the second in-memory block map in response to a second point-in-time replication instance; the replication module further configured to access the second in-memory block map instead of the first in-memory block map in response to the second point-in-time replication instance and asynchronously communicate data contained within file regions-that have changed to the replication target as indicated by the second in-memory block map, wherein the data is communicated in an order that is independent of the written order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
- store, the apparatus comprising;
-
10. An apparatus for asynchronous file-based replication of a hierarchically-indexed data store, the apparatus comprising:
a hierarchically-indexed data store operable on a CPU means for asynchronously communicating data contained within file regions that have changed to a replication target as indicated by a first in-memory block map; a file system driver configured to monitor writs operations to the hierarchically-indexed data store and track file regions that have changed since a first point-in-time replication instance by updating block status indicators in a second-memory block map; means for clearing the first in-memory block; the file system driver further configured to update block status indicators in the first in-memory block map instead of the second in-memory block map in response to a second point-in-time replication instance; and means for asynchronously communicating data contained within file regions that have changed to the replication target as indicated by the second in-memory block map instead of the first in-memory block map in response to the second point-in-time replication instance, wherein changes to the file regions occur in a written order and asynchronously communicating data occurs in an order that is independent of the written order. - View Dependent Claims (11)
-
12. A system for asynchronous file-based replication of a hierarchically-indexed data store, the system comprising:
-
a replication target comprising a CPU and a first hierarchically-indexed data store_configured to store data in a hierarchical structure corresponding to a file system; a replication source comprising a CPU and a second hierarchically-indexed data store configured to store data in a hierarchical structure corresponding to a file system; the replication source further comprising an operating system configured to access the second hierarchically indexed data store and initiate write operations to second the hierarchically indexed data store; the replication source further comprising a first in-memory block map for tracking changes to the second hierarchically indexed data store, the first in-memory block map comprising a plurality of status indicators configured to indicate changes to blocks on the second hierarchically indexed data store; the replication source further comprising a second in-memory block map for tracking changes to the second hierarchically indexed data store, the second in-memory block map comprising a plurality of status indicators configured to indicate changes to blocks on the second hierarchically indexed data store; the replication source further comprising a tracking module comprising a file system driver configured to monitor write operations initiated by the operating system and track file regions that have changed since a first point-in-time replication instance by updating the status indicators in the second in-memory block map in a written order; the replication source further comprising a replication module configured to asynchronously communicate data contained within file regions that have changed to a replication target as indicated by the first in-memory block map; the file system driver further configured to clear the first in-memory block and access the first in-memory block map instead of the second in-memory block map in response to a second point-in-time replication instance; the replication module further configured to access the second in-memory block map instead of the first in-memory block map in response to the second point-in-time replication instance and asynchronously communicate data contained within file regions that have changed to the replication target as indicated by the second in-memory block map, wherein the data is communicated in an order that is independent of the written order. - View Dependent Claims (13, 14)
-
-
15. A computer readable storage medium storing computer readable program code for conducting a method for asynchronous file-based replication of a hierarchically-indexed data store, the method comprising:
-
asynchronously communicating data contained within file regions that have changed to a replication target as indicated by a first in-memory block map; monitoring write operations to a hierarchically-indexed data store with a file system driver in order to track file regions that have changed since a first point-in-time replication instance wherein changes to the file regions occur in a written order; updating block status indicators in a second in-memory block map in response to the changes to the file regions; clearing the first in-memory block and updating block status indicators in the first in-memory block map instead of the second in-memory block map in response to a second point-in-time replication instance; asynchronously communicating data contained within file regions that have changed to the replication target as indicated by the second in-memory block map instead of the first in-memory block map in response to the second point-in-time replication instance, wherein asynchronously communicating data occurs in an order that is independent of the written order. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A file system driver for use in conducting point-in-time replication operations, comprising:
-
a file system driver configured to monitor write operations initiated by an operating system and track file regions that have changed since a first point-in-time replication instance by updating the status indicators in a second in-memory block map in a written order; the file system driver further configured to access the first in-memory block map instead of the second in-memory block map in response to a second point-in-time replication instance.
-
Specification