Dynamic Data Structure Conversion for OLAP Cardinality

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing OLAP systems face inefficiencies in managing data cardinality across different ranges, requiring multiple data structures and consuming excessive memory by maintaining redundant representations, especially when transitioning between uncompressed lists, linear counters, and probabilistic counters.

Innovation Solution

Implementing a method that progressively converts data structures from an uncompressed list to a linear counter and then to a probabilistic counter (PCSA) without retaining the original data, reducing storage needs and extending the useful range of linear counters by eliminating redundant representations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If multiple data structures (uncompressed list, linear counter, probabilistic counter) are maintained simultaneously to handle different cardinality ranges, then accurate cardinality estimation is achieved across all ranges, but memory consumption increases significantly

Engineering Contradiction:
Improvecardinality estimation accuracyVSAvoidmemory consumption
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent implements dynamic transitions between different data structure representations based on the current cardinality range. The system automatically converts from uncompressed list to linear counter, and then to probabilistic counter (PCSA) as cardinality increases, optimizing memory usage while maintaining accuracy for each range without maintaining all structures simultaneously

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the representation parameters of the data structure based on cardinality thresholds. For low cardinalities, it uses uncompressed lists; for medium cardinalities, it transitions to linear counters; for high cardinalities, it uses probabilistic counters. This parameter-based adaptation resolves the contradiction by matching the data structure to the appropriate cardinality range

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If uncompressed lists are used to store data at low cardinalities, then exact cardinality information is maintained, but memory space is wasted when cardinality grows large

Engineering Contradiction:
Improveexact cardinality informationVSAvoidmemory space
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The system dynamically switches from uncompressed list representation to linear counter representation when cardinality exceeds a threshold. This dynamic transition ensures that exact cardinality information is maintained when the set is small, while memory space is conserved when the set grows large by using the more compact linear counter structure

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If linear counters are used to compress data at medium cardinalities, then memory usage is reduced, but accuracy is lost at very high cardinalities

Engineering Contradiction:
Improvememory usageVSAvoidcardinality accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The system dynamically transitions from linear counter representation to probabilistic counter (PCSA) representation when cardinality exceeds the linear counter's effective range. This dynamic adaptation allows the system to maintain memory efficiency while recovering accuracy for very high cardinalities through the probabilistic counter's ability to handle large ranges with bounded error

Inventive Principle:
Principle #15Dynamics

4Ease of operation

If redundant data structure representations are maintained for smooth transitions, then conversion between structures is facilitated, but memory footprint increases beyond database field limits

Engineering Contradiction:
Improveconversion smoothnessVSAvoidmemory footprint
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary cardinality information from the uncompressed list to initialize the linear counter, and then extracts only the cardinality estimate from the linear counter to initialize the probabilistic counter. This extraction approach eliminates the need to maintain redundant full representations, achieving smooth transitions while keeping memory footprint within database field limits

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system discards the uncompressed list representation once its cardinality information is extracted to initialize the linear counter. Similarly, it discards the linear counter once its cardinality estimate is extracted to initialize the probabilistic counter. This discarding and recovering approach ensures that only one representation exists at a time, maintaining ease of conversion while minimizing memory footprint

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS8533167B1Compressed set representation for sets as measures in OLAP cubes
Publication Date: 2013.09.10 GUAVUS INC
  • US8533167B1 patent drawing
  • US8533167B1 patent drawing
  • US8533167B1 patent drawing

AI summary

A cardinality of an incoming data stream is maintained in real time; the cardinality is maintained in a data structure that is represented by an unsorted list at low cardinalities, a linear counter at medium cardinalities, and a PCSA at high cardinalities. The conversion to the linear counter makes use of the data in the unsorted list, after which that data is discarded. The conversion to the PCSA uses only the data in the linear counter.