Timeseries Bucketing and Indexing for Document Database Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing non-relational database formats, such as MongoDB, are not conducive for storing timeseries data efficiently, as they are based on documents rather than time, requiring conversion to SQL-like formats for processing.
Innovation Solution
A system and method for storing timeseries data in a non-relational database using a data structure defined by documents, organized in buckets indexed by B-trees, with geo-indexing and secondary indexes, and supporting functionalities like aggregation pipelines, sampling, and windowing operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If timeseries data is stored in traditional non-relational database formats (document-based), then the database can store unstructured data flexibly, but it is not conducive for efficient timeseries data storage and processing
Solution Approach 1:
The patent segments timeseries data into discrete events with specific time values, organizing them in a structured format within the document-based database. Each event is divided into comparable components (time, metadata, values) that can be efficiently indexed and queried, resolving the contradiction between flexible storage and processing efficiency.
2Productivity
If timeseries data is converted to SQL-like formats for processing, then SQL-like functions can be performed efficiently, but the database format complexity increases and conversion overhead is introduced
Solution Approach 1:
The patent introduces an intermediary aggregation pipeline that operates directly on the document-based timeseries data structure. This pipeline provides SQL-like processing capabilities without requiring format conversion, acting as a mediator between the flexible document storage and structured query requirements, thereby maintaining storage simplicity while enabling efficient processing.
3Adaptability or versatility
If traditional document-based storage is used, then storage flexibility is maintained, but indexing and query performance for timeseries data is suboptimal
Solution Approach 1:
The patent implements preliminary indexing strategies where time values and metadata are pre-processed and organized into efficient index structures during data ingestion. This preliminary organization enables fast retrieval and querying of timeseries data while maintaining the flexible document-based storage format, resolving the contradiction between storage flexibility and query performance.
Data Source
AI summary
In some implementations, events measured at various points in time may be organized in a data structure that defines an event represented by a document. In particular, events can be organized in columns of documents referred to as buckets. These buckets may be indexed using B-trees by addressing metadata values or value ranges. Buckets may be defined by periods of time. Documents may also be geoindexed and stored in one or more locations in a distributed computer network. One or more secondary indexes may be created based on time and/or metadata values within documents.


