Database Join Range Filtering Using Column Range Indexes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database management systems face performance deterioration in join processing due to the need to search the entire range of the inner table for each record, especially when search conditions are absent or the join is not based on a partition key.

Innovation Solution

A database management apparatus that uses column range indexes to limit the scanning range of the inner table by creating filters based on the join columns of current and next stages, allowing the system to scan only the identified ranges during join processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Area of stationary object

If the scanning range of the inner table is limited using existing methods (record set, search conditions, partition key, or bloom filter), then the scanning range can be restricted under specific conditions, but the processing performance deteriorates when searching for each record or when search conditions/partition keys are absent

Engineering Contradiction:
Improvescanning range of inner tableVSAvoidprocessing performance of join
Core Design Contradiction:
Area of stationary objectVSProductivity

Solution Approach 1:

The patent pre-calculates and stores column range indexes for join columns before the join operation. These indexes represent the minimum and maximum values for each column in different data ranges. During the join operation, the system uses these pre-computed indexes to quickly determine the scanning range without needing to search the entire inner table or perform per-record calculations, thus improving processing performance while limiting the scanning range.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the approach from using traditional filtering mechanisms (search conditions, partition keys, bloom filters) to using column range indexes that store minimum and maximum value parameters. This parameter-based approach allows the system to efficiently determine scanning ranges by comparing index values rather than evaluating complex filter conditions for each record, resolving the contradiction between range limitation and processing performance.

Inventive Principle:
Principle #35Parameter changes

2Area of stationary object

If the scanning range is limited using search conditions or partition keys, then the inner table scanning can be restricted, but the scanning range cannot be limited when search conditions are not assigned or the join is not based on a partition key

Engineering Contradiction:
Improvescanning range of inner tableVSAvoidapplicability to different join scenarios
Core Design Contradiction:
Area of stationary objectVSAdaptability or versatility

Solution Approach 1:

The patent creates column range indexes for join columns that can be universally applied to any join operation regardless of whether search conditions or partition keys are present. The indexes serve multiple purposes: they enable range limitation in joins with search conditions, provide scanning range information for partitioned joins, and crucially, allow range limitation in joins without search conditions or partition keys. This universal mechanism resolves the contradiction by making the scanning range limitation capability applicable to all join scenarios.

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

Data Source

PatentUS20250390495A1Database management apparatus and method
Publication Date: 2025.12.25 HITACHI LTD
  • US20250390495A1 patent drawing
  • US20250390495A1 patent drawing
  • US20250390495A1 patent drawing

AI summary

The scanning range of an inner table can be limited in the join processing irrespective of the existence of search conditions or a partition key, and the performance of the join processing can be improved. There is a column range index representing a range of values stored in a table. When a join result of a current stage is an outer table related to a join of a next stage in a join of each stage of the join processing, a database management apparatus identifies whether there is a possibility that an inner table related to a join of a next stage includes a hit record in an inner table related to a join of a current stage based on a column range index corresponding to a join column of a current stage and a column range index corresponding to a join column of a next stage.