Dictionary Column Computation for Low-Cardinality Database Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database operations on columns with low cardinality values are computationally expensive due to inefficient processing methods, leading to slowed execution times.

Innovation Solution

Creating a dictionary column from a dictionary table corresponding to the column values, applying operations to the dictionary table instead of the original data table, thereby reducing the number of iterations required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database operations are performed on each row of a column individually, then the operations can be applied to all data records, but the computational expense increases and execution time slows

Engineering Contradiction:
Improvecompleteness of operation applicationVSAvoidexecution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the column data into two parts: a dictionary table containing unique values and their identifiers, and the original data table containing only identifiers. Operations are performed on the smaller dictionary table and then applied to all rows through identifier mapping, reducing computational overhead while maintaining completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a dictionary column in the dictionary table that replicates the operation results for each unique value. This copy contains pre-computed results that can be efficiently referenced during query execution, avoiding repeated computation on the full data table.

Inventive Principle:
Principle #26Copying

2Reliability

If operations are applied to the original data table with all rows, then all data records are processed, but the number of iterations is large for low cardinality columns

Engineering Contradiction:
Improvedata coverageVSAvoidexecution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the data processing task into two stages: first performing operations on the compact dictionary table with unique values, then mapping results back to the original data through identifier relationships. This ensures all data records are covered while minimizing iteration count to the number of unique values.

Inventive Principle:
Principle #1Segmentation

3Productivity

If a dictionary column is created from the dictionary table, then computational expense is reduced for low cardinality columns, but additional data structures must be maintained

Engineering Contradiction:
Improvecomputational efficiencyVSAvoiddata structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs the computationally expensive operations in advance on the dictionary table during data loading or maintenance operations. The results are stored in the dictionary column, so that during query execution, only simple identifier lookups are required, significantly improving runtime performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250370967A1Calculated dictionary column creation
Publication Date: 2025.12.04 SAP SE
  • US20250370967A1 patent drawing
  • US20250370967A1 patent drawing
  • US20250370967A1 patent drawing

AI summary

In an example embodiment, rather than apply an operation to the values of an original data table, the operation is applied to the values in the dictionary table corresponding to the column of the original data table on which the operation is being performed. This produces what is termed a “dictionary column”, which is a column that contains cells having values indicating the results applying the operation to the rows of the corresponding dictionary table.