Bloom Filter Partition Checks Before Database Slice Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of loading data from disk to memory is time-consuming and resource-intensive, often resulting in unnecessary operations when the requested data is not included in the loaded portion, necessitating efficient optimization.

Innovation Solution

Implementing a used identifier cache and bloom filters to determine whether requested data is present in a data slice before loading, using a bloom filter management system that creates filters based on frequently used identifiers to minimize resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is loaded from disk to memory without pre-checking, then data retrieval can proceed immediately, but unnecessary loading operations consume time and resources

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidloading operation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by creating bloom filters before data loading operations. The system pre-processes data to generate bloom filter structures that can quickly determine whether requested data exists in a partition. This allows the system to check data presence before initiating loading operations, avoiding unnecessary disk-to-memory transfers and reducing overall retrieval time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If bloom filters are created for all identifiers, then data presence can be accurately checked, but memory resources are excessively consumed

Engineering Contradiction:
Improvedata presence detection accuracyVSAvoidmemory resource usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by creating bloom filters selectively rather than uniformly for all identifiers. The system identifies frequently queried identifiers and creates bloom filters only for those, while using different strategies for less frequently accessed data. This localized approach maintains detection accuracy for common queries while significantly reducing overall memory consumption.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent applies parameter changes by adjusting bloom filter characteristics such as filter size, hash function count, and false positive rate based on identifier frequency and data access patterns. This allows optimization of the balance between detection reliability and memory usage, allocating more resources to high-priority identifiers and fewer resources to low-priority ones.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12481656B2Bloom filter for avoiding partition loading
Publication Date: 2025.11.25 SAP SE
  • US12481656B2 patent drawing
  • US12481656B2 patent drawing
  • US12481656B2 patent drawing

AI summary

Embodiments are described for a database management system comprising a memory and at least one processor coupled to the memory. The at least one processor is configured to receive a query that corresponds to a data slice and determine a bloom filter based on the query. The at least one processor is further configured to determine that the data slice includes data requested by the query based on the bloom filter and in response to determining that the data slice includes the data requested by the query, load the data slice to the memory.