SetSketch Data Structure for Parallel Set Cardinality and Similarity Estimation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current sketch data structures lack the ability to natively estimate both set cardinalities and joint parameters, are not idempotent, commutative, or mergeable, and require complex analysis procedures with heuristic dependencies, limiting their efficiency and accuracy in parallel processing environments.

Innovation Solution

The SetSketch data structure, which consists of a list of registers with adaptable recording behavior based on expected cardinality ranges and desired estimation accuracy, allows for distributed recording, idempotent and commutative operations, and efficient merging of sketches, using random register updates and lookup tables to reduce computational effort.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If existing sketch data structures are used to estimate set cardinalities or joint parameters, then storage space is reduced, but the structures cannot natively estimate both set cardinalities and joint parameters simultaneously

Engineering Contradiction:
Improvecapability to estimate both set cardinalities and joint parametersVSAvoidstructure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The SetSketch data structure is designed to perform multiple functions: it can estimate both set cardinalities and joint parameters (such as Jaccard similarity and intersection cardinality) using the same underlying structure. This eliminates the need for separate sketch structures for different estimation tasks, thereby improving versatility without proportionally increasing complexity.

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

Solution Approach 2:

The patent combines previously separate sketching approaches (like HyperLogLog for cardinality and MinHash for Jaccard similarity) into a unified SetSketch structure. By merging these functionalities into a single data structure with shared registers, the system achieves multi-functionality while controlling structural complexity.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If sketch data structures are made idempotent, commutative, and mergeable for parallel processing, then processing efficiency improves, but the analysis procedures become more complex and may depend on heuristics

Engineering Contradiction:
Improveparallel processing efficiencyVSAvoidanalysis procedure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The SetSketch structure divides the estimation task into independent register segments that can be updated in parallel. Each register independently processes input elements, allowing idempotent and commutative operations. The final estimation is obtained by combining results from individual registers, enabling efficient parallel and distributed processing without complex inter-dependent procedures.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If the size of the sketch is increased to improve estimation error guarantees, then estimation accuracy improves, but the maximum supported cardinality decreases

Engineering Contradiction:
Improveestimation accuracyVSAvoidmaximum supported cardinality
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The SetSketch structure uses dynamic register update mechanisms where the behavior of registers adapts based on the input data characteristics. The structure can adjust its effective capacity and precision dynamically, allowing it to maintain both high estimation accuracy and support for large cardinalities by optimizing register utilization based on the actual data distribution rather than being constrained by fixed size limitations.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20230205660A1Method And System For Computing Aggregable And Aligned Fingerprints Of Sets For Fast Cardinality, Overlap And Similarity Computation
Publication Date: 2023.06.29 DYNATRACE LLC
  • US20230205660A1 patent drawing
  • US20230205660A1 patent drawing
  • US20230205660A1 patent drawing

AI summary

A probabilistic set sketching data structure for the estimation of properties of individual sets, like cardinality, as well as joint parameters describing relations between different sets, like similarity scores or intersection cardinalities. The memory size of the proposed sketch is widely independent of the size of the observed sets and may be chosen primarily based on the desired estimation error. A tuning parameter controls the amount of information stored in the sketch regarding the content of the monitored set and may be used to trade joint parameter estimation accuracy for sketch size. Improved estimation algorithms are proposed for both cardinality and joint quantities. Especially the proposed joint quantity estimation has considerable advantages, as it reduces the problem of estimating three dependent parameters, like the cardinalities of intersections and the two complements to the estimation of only one parameter, like the Jaccard coefficient.