Directed graph for distribution of time-constrained data
AssigneeSap SE
InventorUdo Klein
Life of this patent
Estimating the term…
Abstract
In synchronizing data across a database, time-dependent and time-constrained data may be synchronized, using grouping value(s) that may themselves be time-dependent. When a time constraint prohibits data timelines from exhibiting time gaps, data included in the timeline may be mapped to a directed graph. In this way, any time gaps may be filled by extending data records that precede the gap(s), and this operation may be reflected in a coloring of the directed graph. Then, recursive processing may be performed using the directed graph, so as to account for any unanticipated effects of the extended data records.
Claims20
A computer-implemented method comprising:
- translating grouping values into nodes of a directed graph, wherein the grouping values are associated with periods of timelines, the timelines comprising data records, and wherein a grouping value associated with a period of a first one of the timelines being the same as a grouping value associated with a concurrently occurring period of a second one of the timelines indicates that specified data of a data record for the period of the first one of the timelines is to be synchronized with the specified data of a data record for the period of the second one of the timelines;
- distributing data through the nodes to obtain a modified subset of the data records;
- re-distributing the data recursively along the nodes to obtain a modified directed graph;
- translating the modified directed graph into a modified plurality of timelines that include the modified subset of data records;
- and
- storing the modified plurality of timelines in a storage medium.
An apparatus comprising a storage medium having machine-executable instructions stored thereon, the instructions including:
- a first code segment, stored on the storage medium, for selecting a first grouping value sequence associated with a first timeline, the first timeline including first data records;
- a second code segment, stored on the storage medium, for selecting a second grouping value sequence associated with a second timeline, the second timeline including second data records, wherein the first data records and second data records are subject to a time constraint such that no gap is allowed between any two of the first data records and between any two of the second data records, and further wherein a grouping value associated with a period of the first timeline being the same as a grouping value associated with a concurrently occurring period of the second timeline indicates that specified data of a data record for the period of the first timeline is to be synchronized with the specified data of a data record for the period of the second timeline;
- a third code segment, stored on the storage medium, for mapping the first grouping value sequence and the second grouping value sequence into nodes of a directed graph;
- a fourth code segment, stored on the storage medium, for representing data associated with a first grouping value in the directed graph by providing a first designation to a first node associated with the first grouping value;
- and
- a fifth code segment, stored on the storage medium, for recursively distributing data through the directed graph in response to a modification of one of the first data records, beginning with a high date of the first timeline and the second timeline, to ensure that all of the first and second data records are in accordance with the time constraint.
A system comprising:
- means for associating, in an electronic database, nodes of a directed graph with grouping periods and grouping values associated with timelines, wherein a grouping value associated with a period of a first one of the timelines being the same as a grouping value associated with a concurrently occurring period of a second one of the timelines indicates that specified data of a data record for the period of the first one of the timelines is to be synchronized with the specified data of a data record for the period of the second one of the timelines;
- means for associating, in an electronic database, an edge of the directed graph between succeeding grouping periods;
- means for distributing data through the nodes to obtain a modified subset of the data records, re-distributing the data recursively along the nodes to obtain a modified directed graph, and translating the modified directed graph into a modified plurality of timelines that include the modified subset of data records;
- and
- means for storing the modified plurality of timelines in a storage medium.
Dependencies are inferred from the claim text.