Composite Key Hash Collision Reduction via Linear Index Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies lack an effective means to minimize hash collisions of composite keys, which can lead to increased lookup times due to the handling of collisions using techniques like hashing with another function or maintaining linked-lists.

Innovation Solution

The method involves converting each component of a composite key into a linear index that represents the key component, storing these indices in separate lookup memories, and creating a reduced composite key by joining the linear indices, thereby reducing the total length of the composite key in a lossless manner.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If composite keys are used to uniquely identify entity occurrences, then identification accuracy is improved, but hash collisions increase leading to longer lookup times

Engineering Contradiction:
Improveidentification accuracyVSAvoidlookup time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The composite key is segmented into multiple individual key components, each of which is independently hashed and stored in a separate hash table. This segmentation allows the system to handle each component separately, reducing the complexity of hashing the entire composite key and minimizing collisions by distributing the hashing load across multiple smaller hash tables.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Individual hash tables serve as intermediaries between the composite key components and the final lookup result. Each hash table processes a specific key component and returns potential matches, which are then combined to determine the final result. This intermediary approach breaks down the complex hashing problem into simpler sub-problems.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If traditional hashing techniques are used to handle composite keys, then implementation simplicity is maintained, but collision handling complexity increases

Engineering Contradiction:
Improveimplementation simplicityVSAvoidcollision handling complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The system segments the collision handling process by creating separate hash tables for each key component. Instead of implementing a complex collision handling mechanism for the entire composite key, each individual hash table handles collisions independently using standard hashing techniques, greatly simplifying the overall implementation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple simple hash tables are merged to collectively handle the composite key lookup. Each hash table is independently simple to implement, but their combination provides robust collision handling for the composite key structure without requiring complex individual table implementations.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12287829B2Minimizing hash collisions of composite keys
Publication Date: 2025.04.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12287829B2 patent drawing
  • US12287829B2 patent drawing
  • US12287829B2 patent drawing

AI summary

A computer-implemented method, system and computer program product for minimizing hash collisions of composite keys. Each component (“key component”) of the composite key is converted into a linear index that uniquely represents that key component. Such a one-to-one mapping reduces the length (i.e., range of values the key component represents) of each component without introducing any collisions thereby effectively resulting in the lossless compression of the individual key components. Such a linear index for each converted key component is stored in a separate lookup memory. A reduced composite key is then created by joining together the linear indices that represent the components of the composite key thereby reducing the total length or domain (i.e., range of values the composite key represents) of the original composite key in a lossless manner. In this manner, by reducing the total length of the composite key, hash collisions of composite keys are minimized.