Database Indexing for Validity Interval Search Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Database search performance is degraded when searching records with defined validity intervals, as existing systems struggle to efficiently handle two inequality conditions simultaneously, leading to multiple scans and increased processing time.

Innovation Solution

A computer-implemented method for indexing database records with defined validity intervals, where one attribute is encoded into multiple discrete index values, allowing for efficient scanning using both inequality and equality conditions within a single index scan, reducing the need for multiple scans and improving search performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If two inequality conditions are used in database searching to identify records satisfying validity interval conditions, then search accuracy is improved, but search performance deteriorates due to multiple scans of the same record

Engineering Contradiction:
Improvesearch accuracyVSAvoidsearch performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The validity interval is segmented into multiple discrete ranges, each assigned a unique index value. This segmentation allows the database to encode continuous interval data into discrete categories that can be efficiently queried, transforming a complex continuous range query into simpler discrete value lookups that reduce scanning overhead while maintaining query accuracy

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension by encoding the second attribute value into discrete index values and storing them in a secondary index. This transforms the two-dimensional inequality search problem into a combination of equality search on the encoded index and inequality search on the original attribute, enabling more efficient query processing through dimensional transformation

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If multiple inequality scans are performed to handle validity interval searches, then comprehensive record identification is improved, but processing time increases due to repeated scanning of the same records

Engineering Contradiction:
Improverecord identification completenessVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary encoding of the second attribute value into discrete index values and pre-stores these encoded values in a secondary index during data insertion or update operations. This preliminary action ensures that when a search query is executed, the encoded index values are already available for efficient equality-based filtering, eliminating the need for repeated scanning and reducing processing time while maintaining complete record identification

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a secondary index that contains copies of the encoded second attribute values alongside the primary data. This copying mechanism allows the database to perform efficient equality searches on the copied encoded values without accessing or scanning the entire primary dataset repeatedly, thus reducing processing time while ensuring comprehensive record identification through the combination of primary and secondary index queries

Inventive Principle:
Principle #26Copying

Data Source

PatentUS7630969B2Indexing and searching for database records with defined validity intervals
Publication Date: 2009.12.08 SAP SE
  • US7630969B2 patent drawing
  • US7630969B2 patent drawing
  • US7630969B2 patent drawing

AI summary

A computer-implemented method of indexing an electronic database record to facilitate searching is provided, as well as a method of performing a search using the index. The method includes receiving a value for one of a start field and an end field for a database record that defines a validity range for a property. The method further includes assigning a corresponding one of multiple defined index values for the received value. There is a different index value defined for each of multiple defined consecutive ranges for the property. The assigned index value corresponds to a one of the multiple defined consecutive ranges within which the received value falls. The method also includes storing the assigned index value in association with the database record in a manner that is searchable.