Bloom Filter Cache Line Lookup Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database lookups can be inefficient due to excessive disk access and bandwidth consumption when searching for values, especially over networks, as existing methods require direct database searches.

Innovation Solution

A high-performance bloom filter system that uses hash representations and cache lines to probabilistically determine the presence of values in a database by setting bits in cache lines, reducing computational resources and enabling faster lookup operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If direct database search is performed, then lookup accuracy is ensured, but disk access and bandwidth consumption increase significantly

Engineering Contradiction:
Improvelookup accuracyVSAvoiddisk access and bandwidth consumption
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing hash representations of database values in a bloom filter data structure before actual lookup operations. This allows the system to quickly determine value presence without performing full database searches, thereby reducing disk access and bandwidth consumption while maintaining lookup accuracy through the probabilistic nature of bloom filters.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses an intermediary approach by introducing a bloom filter as a mediator between the database and the lookup query. The bloom filter contains hash representations that serve as a preliminary check, allowing the system to avoid direct database access for values that are definitely not present, thus reducing the harmful effects of excessive disk access and bandwidth consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If hash representations and cache lines are used for probabilistic determination, then computational resources are reduced, but false positives may occur

Engineering Contradiction:
Improvecomputational resourcesVSAvoidfalse positives
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The patent applies parameter changes by utilizing multiple hash functions and adjusting the bloom filter parameters (such as the number of bits and hash functions) to optimize the balance between computational efficiency and false positive rate. By changing these parameters, the system can reduce computational resource usage while maintaining acceptable reliability levels for the lookup operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10915576B2High performance bloom filter
Publication Date: 2021.02.09 SAP SE
  • US10915576B2 patent drawing
  • US10915576B2 patent drawing
  • US10915576B2 patent drawing

AI summary

A method may include identifying, based on a first hash representation of a value, a first cache line corresponding to the value. A first bit and a second bit in the cache line may be identified as corresponding to the value based on a second hash representation of the value. The first bit may be identified based on a first offset in a binary representation of the second hash representation. The second bit may be identified based on a second offset in the binary representation of the second hash representation. Each of the first offset and the second offset may include a portion of the binary digits forming the binary representation of the second hash representation. The value may be determined to be absent from a set of values based the first bit and/or the second bit being set to a first value instead of a second value.