Bitemporal Timeline Index for Temporal Database Query Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Temporal databases face challenges in efficiently querying and indexing data due to the need to manage both system time and application time dimensions, which are not fully orthogonal, leading to high resource consumption and complex indexing requirements.
Innovation Solution
A bitemporal timeline index is implemented, dynamically building an application timeline index by reverting to checkpoints, scanning system timeline indices, computing deltas, and constructing the index on demand, with updates stored in a delta store to support efficient querying across multiple time dimensions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If a traditional timeline index is used to index temporal data, then the indexing process is simple, but the query response time is slow and processing resources are high when dealing with multiple time dimensions
Solution Approach 1:
The patent segments the timeline index into two independent components: a system timeline index that tracks system time changes and an application timeline index that tracks application time changes. This segmentation allows each index to be optimized for its specific time dimension independently, improving query performance while reducing the complexity of managing a single complex index structure.
Solution Approach 2:
The patent introduces a second time dimension by maintaining both system time and application time indices simultaneously. This dimensional expansion from a single timeline to a bitemporal timeline enables efficient querying across multiple time dimensions, resolving the contradiction between query speed and indexing complexity through structured multi-dimensional organization.
2Measurement precision
If a bitemporal timeline index is built completely, then query accuracy across multiple time dimensions is improved, but memory consumption and processing resources increase
Solution Approach 1:
The patent implements dynamic index construction where the application timeline index is built on-demand based on query requirements rather than maintaining a complete static index. The system dynamically constructs the application timeline index by scanning the system timeline index and computing deltas only when needed, reducing memory consumption while maintaining query accuracy.
Solution Approach 2:
The patent performs preliminary actions by pre-building and maintaining the system timeline index continuously, while only constructing the application timeline index when queries require it. This selective preliminary action reduces overall memory consumption while ensuring query accuracy is maintained when needed.
3Quantity of substance
If the application timeline index is built dynamically on demand, then memory usage is reduced, but the index construction time increases
Solution Approach 1:
The patent performs preliminary action by pre-building the system timeline index continuously as data changes occur. When a query requires the application timeline index, the system uses this pre-built foundation to quickly construct the application timeline index by scanning only the relevant portions of the system timeline index, reducing the overall time required compared to building from scratch.
Solution Approach 2:
The patent uses copying by creating the application timeline index as a derived structure from the system timeline index. The application timeline index is constructed by copying and transforming relevant information from the system timeline index through delta computation, which is more efficient than independently building both indices from raw data.
Data Source
AI summary
Data that includes a query of a temporal database is received from a remote application server. The query specifies at least one fact and a system time and an application time for the at least one fact. Thereafter, a bitemporal timeline index is accessed to identify data responsive to the query. The bitemporal timeline index includes a system time dimension and an application time dimension. Next, the identified data can be retrieved and provided to the remote application server. Related apparatus, systems, techniques and articles are also described.


