Continuous Functions in Time-Series Database Query Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As the scale and complexity of distributed database systems increase, managing and scaling resources to efficiently ingest, store, and query large volumes of time-series data becomes challenging, leading to issues with latency, availability, and resource utilization.

Innovation Solution

A scalable architecture for a distributed time-series database is implemented, featuring independent scaling of stages such as ingestion, storage, and query processing, with hierarchical clustering, two-dimensional tile storage, and continuous functions to enhance performance and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If database stages are tightly coupled, then system complexity is reduced, but scalability and query performance deteriorate

Engineering Contradiction:
Improvesystem complexityVSAvoidscalability
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The database system is divided into distinct independent stages: ingestion stage, storage stage, and query processing stage. Each stage can be scaled and managed independently, allowing the system to handle increasing workloads without requiring proportional increases in overall system complexity. The ingestion stage receives and validates data, the storage stage manages data persistence, and the query processing stage handles data retrieval and analysis, with each stage operating autonomously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces temporal dimension separation by implementing continuous functions that operate on time-series data across different time granularities. This allows queries to efficiently access data at multiple time scales (real-time, hourly, daily, monthly) without requiring full scans of entire datasets, thereby improving query performance while maintaining manageable system complexity through structured temporal organization.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If database stages are decoupled for independent scaling, then scalability improves, but system complexity increases

Engineering Contradiction:
ImprovescalabilityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The query processing stage is designed as a universal component that can handle multiple types of queries and operations across different data formats and time granularities. This multi-functional design reduces the need for specialized components for each query type, thereby improving scalability without proportionally increasing system complexity. The same query processing infrastructure serves diverse analytical needs.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system introduces intermediate data structures and abstraction layers between the storage stage and query processing stage. These intermediaries include continuous functions that bridge discrete data points and mathematical operations that translate between different time granularities. These intermediaries simplify the interfaces between decoupled stages, making the overall system easier to manage despite the increased modularity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If continuous functions are implemented on discrete time-series data, then query flexibility improves, but computational overhead increases

Engineering Contradiction:
Improvequery flexibilityVSAvoidcomputational overhead
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The system pre-computes and stores continuous functions at multiple time granularities during the data ingestion phase. Instead of computing complex continuous functions on-demand during query execution, the continuous functions are预先 calculated and stored in an optimized format. This preliminary action significantly reduces computational overhead during query processing while maintaining high query flexibility, as the pre-computed functions can be directly applied to various query scenarios without intensive real-time calculations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240184785A1Continuous functions in a time-series database
Publication Date: 2024.06.06 AMAZON TECH INC
  • US20240184785A1 patent drawing
  • US20240184785A1 patent drawing
  • US20240184785A1 patent drawing

AI summary

Methods, systems, and computer-readable media for continuous functions in a time-series database are disclosed. A plurality of data points of a time series are stored into one or more storage tiers of a time-series database. The plurality of data points comprise a plurality of discrete measurements at respective timestamps. Using one or more query processors of the time-series database, a query of the time series is initiated. The query indicates a time range. Using the one or more query processors, a continuous function is determined that represents a segment of the time series in the time range. The continuous function is determined based at least in part on the plurality of data points. An operation is performed using the continuous function as an input.