Bloom Filter Batch Materialization for Shuffle-Free CDC Merges

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Batch materialization of large datasets in distributed computing architectures is hindered by the need for resource-intensive shuffle operations, which are time-consuming and risk missing service-level agreements (SLAs).

Innovation Solution

The method involves extracting primary keys from an incremental change data capture (CDC) changeset, adding them to Bloom filters, and broadcasting these filters to executors. Each executor filters a baseline data table to generate match and unmatched dataframes, allowing changes to be applied efficiently without requiring a shuffle operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If shuffle operation is used for batch materialization of large datasets, then complete merging of changes can be achieved, but processing time and resource consumption increase significantly

Engineering Contradiction:
Improvecompleteness of data mergingVSAvoidmaterialization processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the primary keys from the changeset data rather than processing the entire dataset. By taking out just the essential identification elements (primary keys), the system can perform filtering operations without the computational overhead of shuffling and merging complete records, thus reducing processing time while maintaining data completeness.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the materialization process into distinct phases: extracting primary keys, broadcasting filters, filtering baseline data, and applying changes. This segmentation allows each phase to be optimized independently, avoiding the need for a single resource-intensive shuffle operation and enabling more efficient parallel processing.

Inventive Principle:
Principle #1Segmentation

2Reliability

If shuffle operation is used for batch materialization, then all data changes can be merged accurately, but resource consumption and cost increase

Engineering Contradiction:
Improveaccuracy of data mergingVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary actions by extracting primary keys and creating filter structures before the actual materialization process. By preparing the filtering mechanism in advance, the system avoids the need for resource-intensive shuffle operations during the main processing phase, reducing overall computational resource consumption while ensuring accurate data merging.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary filtering mechanism that uses primary keys as a mediator between the changeset and baseline data. This intermediary layer enables accurate matching and merging without requiring the expensive shuffle operation, thus reducing resource consumption while maintaining merging accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If traditional merge logic is used with large datasets, then comprehensive data integration can be achieved, but the process takes hours and lacks control over completion time

Engineering Contradiction:
Improvecompleteness of data integrationVSAvoidmaterialization processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces the traditional mechanical shuffle and merge operations with a filtering-based approach. Instead of physically shuffling and comparing entire datasets, the system uses filter structures built from primary keys to efficiently identify and integrate only the necessary data changes, dramatically improving processing speed while maintaining integration completeness.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent changes the fundamental parameter of processing from operating on complete records to operating on primary keys and filter structures. This parameter change reduces the data volume requiring processing from terabytes to much smaller key sets, enabling faster materialization while ensuring all necessary data integrations are captured.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12346331B1Batch materialization using bloom filters
Publication Date: 2025.07.01 INTUIT INC
  • US12346331B1 patent drawing
  • US12346331B1 patent drawing
  • US12346331B1 patent drawing

AI summary

Systems and methods are described for batch materialization of an incremental change data capture (CDC) changeset. The primary keys are extracted from the incremental CDC changeset and an indication of the extracted primary keys are broadcast to a plurality of executors. The primary keys may be added to Bloom filter or a plurality of Bloom filters that are broadcast to the executors. Each executor filters a baseline data table based on the extracted primary keys to generate a baseline match dataframe with all primary keys matching the extracted primary keys, and a baseline unmatched dataframe with all primary keys not matching the extracted primary keys. Each executor receives a partitioned incremental CDC changeset and combines the changes with the baseline match dataframe to produce a final changed baseline data table.