Block Index for Compressed Time Series Data Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data processing systems face challenges in optimizing memory consumption and performance when handling time series data, particularly in supporting equidistant time series with gaps, which leads to increased memory usage and access times.

Innovation Solution

The implementation of a block index system that compresses index vectors by dividing time stamps into blocks, using a start vector and a starting value vector to represent block positions and values, and applying linear run length encoding (LRLE) to reduce memory consumption and enhance access efficiency, while supporting gaps in time series data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If time series data is stored with full index vectors for each timestamp, then data access precision is improved, but memory consumption increases

Engineering Contradiction:
Improvedata access precisionVSAvoidmemory consumption
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent divides the time series data into blocks where each block contains a range of consecutive timestamps. Instead of storing full index vectors for every timestamp, the patent stores compressed block indices that represent ranges of timestamps. This segmentation allows precise access to specific time ranges while reducing memory consumption by not storing redundant index information for every individual timestamp.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the storage representation from storing complete index vectors for each timestamp to storing compressed block indices with start positions and length information. This parameter change in the data structure allows the system to maintain access precision by storing block-level metadata while significantly reducing memory consumption by eliminating redundant timestamp index information.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If compressed block indices are used to reduce memory consumption, then memory efficiency is improved, but data access speed may worsen

Engineering Contradiction:
Improvememory efficiencyVSAvoiddata access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent pre-organizes data into blocks with stored start positions and length information during the data ingestion phase. This preliminary action of structuring data into manageable blocks with metadata allows for efficient querying later, as the system can quickly locate relevant blocks without scanning entire datasets, thus maintaining fast access speeds despite compression.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces block indices as an intermediary layer between the raw time series data and query operations. These block indices act as a metadata layer that stores start positions and length information, enabling the query system to efficiently locate and retrieve specific time ranges without directly processing compressed data, thus maintaining access speed while benefiting from compression.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If traditional indexing methods are used for time series data, then query simplicity is maintained, but memory consumption increases

Engineering Contradiction:
Improvequery simplicityVSAvoidmemory consumption
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent segments time series data into blocks with associated metadata (start position, length), creating a hierarchical structure that maintains query simplicity through block-level operations while reducing memory consumption by not storing full index vectors for every timestamp. Queries can operate on blocks rather than individual timestamps, simplifying the indexing structure.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If gaps in time series data are supported, then data flexibility is improved, but memory usage increases

Engineering Contradiction:
Improvedata flexibilityVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent uses variable-length block encoding where each block stores start position and length parameters. This parameter change allows blocks to dynamically represent continuous time ranges or handle gaps by simply adjusting the length field, providing data flexibility to support gaps without requiring additional memory structures or complex encoding schemes.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11892999B2Faster access for compressed time series data: the block index
Publication Date: 2024.02.06 SAP SE
  • US11892999B2 patent drawing
  • US11892999B2 patent drawing
  • US11892999B2 patent drawing

AI summary

A system and method for faster access for compressed time series data. A set of blocks are generated based on a table stored in a database of the data platform. The table stores data associated with multiple sources of data provided as consecutive values, each block containing index vectors having a range of the consecutive values. A block index is generated for each block having a field start vector representing a starting position of the block relative to the range of consecutive values, and a starting value vector representing a value of the block at the starting position. The field start vector of the block index is accessed to obtain the starting position of a field corresponding to a first block and to the range of the consecutive values of the first block. The starting value vector is then determined from the block index to determine an end and a length of the field of the first block.