Quantized Time Range Indexing for Out-of-Order Log Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In modern computer systems with numerous services, resources, and applications, managing and searching large volumes of log data becomes complex due to the sheer amount of data and potential delays in data ingestion, leading to inefficiencies in processing and storage, especially when log entries are not in chronological order.

Innovation Solution

The approach involves subdividing log data into equal size blocks based on timestamps, generating an index using encoded bits, and interweaving these bits to create a shorter index value that can be used for efficient querying and storage, allowing for quick retrieval of log data within specific time ranges.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If log data is stored in large volumes without indexing, then storage capacity is maintained, but search efficiency deteriorates

Engineering Contradiction:
Improvelog data volumeVSAvoidsearch efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent divides the large log data into equal-size blocks based on timestamp ranges. Each block is assigned a quantized index value derived from interweaving encoded bits of the start and end timestamps. This segmentation allows the system to maintain large volumes of log data while enabling efficient block-level search operations without processing the entire dataset.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If log entries are collected and stored without chronological ordering, then data collection flexibility is improved, but search complexity increases

Engineering Contradiction:
Improvedata collection flexibilityVSAvoidsearch complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent transforms the search problem by changing the parameter representation. Instead of searching through unsorted log entries chronologically, the system encodes timestamps into quantized index values by interweaving their binary representations. This parameter transformation enables efficient range queries on unsorted data by comparing compact index values rather than full timestamps.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If detailed timestamp indexing is implemented, then search precision is improved, but computational resources required increase

Engineering Contradiction:
Improvetimestamp search precisionVSAvoidcomputational resources
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent extracts only the essential timestamp information needed for range queries by encoding start and end timestamps into quantized index values. The interweaving process extracts the most significant bits of each timestamp and combines them, creating a compressed representation that preserves temporal ordering information while discarding less significant details. This extraction reduces computational overhead while maintaining sufficient precision for time-range searches.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11030174B1Quantized time range indexing for out of order event collections
Publication Date: 2021.06.08 AMAZON TECH INC
  • US11030174B1 patent drawing
  • US11030174B1 patent drawing
  • US11030174B1 patent drawing

AI summary

A system receives a set of log data generated from one or more computing services. The system identifies a first timestamp and a second timestamp associated with a set of log data. The system generates an index by encoding the quantized first and second timestamps and identifies a prefix length between the first and second timestamps. The prefix length is then used as a basis to interweave the encoded bits associated with the first and second timestamps to generate an index value. The index value may then be used as a key in connection with the index to locate log data to satisfy a query request.