Time sequence data management
First Claim
Patent Images
1. A method comprising:
- storing, in a memory device, a sequential, log-based writing structure comprising data and one or more epoch identifiers written with the data, wherein the one or more epoch identifiers are associated with one or more temporal ranges of data, and are stored in one or more metadata headers of the one or more associated temporal ranges of data;
preserving a temporal order of data in the sequential, log-based writing structure in response to storage capacity recovery events, wherein;
the storage capacity recovery events comprise garbage collection cycles that change a location of data within the sequential, log-based writing structure by relocating data from a storage region and erasing the storage region; and
preserving the temporal order comprises changing a location of an epoch identifier within the sequential, log-based writing structure by relocating the epoch identifier with the data; and
servicing a time sequence request comprising a snapshot request, by providing a client with read and write access to data corresponding to a snapshot epoch identifier, from the sequential, log-based writing structure, based on the temporal order, without affecting data associated with a current epoch identifier.
6 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, system, and method are disclosed for data management. The method includes writing data in a sequential log structure. The method also includes receiving a time sequence request from a client. The method further includes servicing the time sequence request based on a temporal order of the data in the sequential log structure.
341 Citations
22 Claims
-
1. A method comprising:
-
storing, in a memory device, a sequential, log-based writing structure comprising data and one or more epoch identifiers written with the data, wherein the one or more epoch identifiers are associated with one or more temporal ranges of data, and are stored in one or more metadata headers of the one or more associated temporal ranges of data; preserving a temporal order of data in the sequential, log-based writing structure in response to storage capacity recovery events, wherein;
the storage capacity recovery events comprise garbage collection cycles that change a location of data within the sequential, log-based writing structure by relocating data from a storage region and erasing the storage region; andpreserving the temporal order comprises changing a location of an epoch identifier within the sequential, log-based writing structure by relocating the epoch identifier with the data; and servicing a time sequence request comprising a snapshot request, by providing a client with read and write access to data corresponding to a snapshot epoch identifier, from the sequential, log-based writing structure, based on the temporal order, without affecting data associated with a current epoch identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. An apparatus comprising:
-
a log storage module configured to store, in a memory device, a sequential, log-based writing structure comprising data and one or more epoch identifiers written with the data, wherein the one or more epoch identifiers are associated with one or more chronological spans of data, and are stored in one or more metadata headers of the one or more associated chronological spans of data; a temporal order module configured to preserve a temporal order of data in the sequential, log-based writing structure in response to storage capacity recovery events, wherein;
the storage capacity recovery events comprise garbage collection cycles that change a location of data within the sequential, log-based writing structure by relocating data from a storage region and erasing the storage region; andpreserving the temporal order comprises changing a location of an epoch identifier within the sequential, log-based writing structure by relocating the epoch identifier with the data; and
a time sequence interface module configured to service a time sequence request comprising a snapshot request, by providing a client with read and write access to data corresponding to a snapshot epoch identifier from the sequential, log-based writing structure, based on the temporal order, without affecting data associated with a current epoch identifier,wherein at least a portion of the log storage module, the temporal order module, and the time sequence interface module comprise one or more of hardware and executable code, the executable code stored on one or more non-transitory computer readable storage media. - View Dependent Claims (14, 15)
-
-
16. A system for time sequence data management, the system comprising:
-
a memory device configured to store a sequential, log-based writing structure comprising data and one or more epoch identifiers written with the data, wherein the one or more epoch identifiers are associated with one or more temporal ranges of data, and are stored in one or more metadata headers of the one or more associated temporal ranges of data; a temporal order module configured to preserve a temporal order of data in the sequential, log-based writing structure in response to storage capacity recovery events, wherein;
the storage capacity recovery events comprise garbage collection cycles that change a location of data within the sequential, log-based writing structure by relocating data from a storage region and erasing the storage region; andpreserving the temporal order comprises changing a location of an epoch identifier within the sequential, log-based writing structure by relocating the epoch identifier with the data; and a time sequence interface module configured to service a time sequence request comprising a snapshot request, by providing a client with read and write access to data corresponding to a snapshot epoch identifier, from the sequential, log-based writing structure, based on the temporal order, without affecting data associated with a current epoch identifier, wherein at least a portion of the temporal order module and the time sequence interface module comprise one or more of hardware and executable code, the executable code stored on one or more non-transitory computer readable storage media. - View Dependent Claims (17)
-
-
18. A computer program product comprising a non-transitory computer readable storage medium storing computer usable program code executable to perform operations for time sequence data management, the operations comprising:
marking a chronological period of data in a sequential journal with an era identifier in the sequential journal, wherein the era identifier that marks the chronological period of data is stored in one or more metadata headers of the chronological period of data; preserving at least one version of data from the chronological period in the sequential journal in response to a storage capacity recovery event for the chronological period, wherein the storage capacity recovery event comprises a garbage collection cycle that changes a location of data and a location of the era identifier within the sequential journal by relocating data from a storage region, relocating the era identifier with the data, and erasing the storage region; and providing a client with read and write access to a snapshot of the chronological period of data using the era identifier, without affecting data associated with a current era identifier. - View Dependent Claims (19, 20)
-
21. An apparatus for time sequence data management, the apparatus comprising:
-
means for maintaining data with one or more epoch identifiers in a sequential log writing structure, wherein the one or more epoch identifiers are associated with one or more temporal ranges of data, and are stored in one or more metadata headers of the one or more associated temporal ranges of data; means for preserving, in response to a storage capacity recovery event, an order in which the data is written, wherein;
the storage capacity recovery event comprises a garbage collection cycle that changes a location of data within the sequential log writing structure by relocating data from a storage region and erasing the storage region; andpreserving the order comprises changing a location of an epoch identifier within the sequential log writing structure by relocating the epoch identifier with the data; and
means for servicing a time sequence request comprising a snapshot request, by providing a client with read and write access to data corresponding to a snapshot epoch identifier, based on the order in which the data is written, without affecting data associated with a current epoch identifier. - View Dependent Claims (22)
-
Specification