Hash Table Collision Handling Using Secondary Hash Values
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The challenge is to efficiently handle collisions in a hash table when using a combination of DRAM and NVRAM for data storage, as collisions lead to reduced DRAM space and degraded access performance, while accessing an inexpensive memory device for collisions increases search delays.
Innovation Solution
The method involves using a first hash value to select a list and store entries in either a DRAM or NVRAM, and employing a second hash value to manage collisions, which is calculated using a different hash function, thereby maintaining DRAM space and improving search performance by reducing reliance on NVRAM access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If mass management data is stored in the DRAM to cope with the collision, then the collision handling capability is improved, but the DRAM space allocated to the data to be originally saved becomes smaller and access performance is degraded
Solution Approach 1:
The patent segments the hash table into multiple zones or regions, allowing different collision handling strategies for different segments. This enables the system to maintain collision handling capability while preserving DRAM space for original data by not requiring uniform expansion across the entire hash table.
Solution Approach 2:
The patent introduces an additional dimension for collision handling by using a secondary hash function or alternative data structure that operates in a different dimensional space. This allows collision resolution without competing for the same DRAM space as the primary data storage.
2Reliability
If the number of times to access an inexpensive memory device to cope with the collision increases, then the collision handling capability is improved, but the searching process for data related to the collision becomes delayed
Solution Approach 1:
The patent performs preliminary actions by pre-computing and storing collision resolution information or by pre-organizing data in a manner that facilitates quick collision handling. This reduces the need for repeated accesses to inexpensive memory devices during actual collision resolution, thereby minimizing searching delays.
Solution Approach 2:
The patent introduces an intermediary data structure or buffer that mediates between the hash table and the inexpensive memory device. This intermediary layer handles collision resolution more efficiently by reducing the frequency and complexity of accesses to the slow memory device, thus decreasing searching process delays.
3Productivity
If a hash table is used for storing mass data, then the data storage efficiency is improved, but collisions occur and desired value cannot be specified only by the hash value
Solution Approach 1:
The patent applies local quality by making different parts of the hash table have different properties. Specifically, certain regions or entries are marked or structured to handle collisions differently, allowing the system to maintain high storage efficiency while ensuring accurate value specification even when collisions occur.
Data Source
AI summary
A method includes: executing a first process includes receiving an entry that includes a kay and a value, selecting a first list from among a plurality of lists in accordance with a first hash value, adding, to the selected first list, a first identifier in association with the received entry, and storing the received entry in any of a first memory device and a second memory device that is greater in latency than the first memory device; and executing a second process that includes receiving a searching request for a value, selecting the first list based on the first hash value derived from the searching key in the received searching request, obtaining the first identifier from the first list selected in the second process, obtaining the entry associated with the first identifier obtained in the second process, and outputting the value in the entry obtained in the second process.


