Table look-up method with adaptive hashing
First Claim
1. A method of accessing data stored in an indexed data table for various values of a key, the method comprising the step of:
- establishing a hash table having hash index values and a hash function that links the values of said key to said hash index values;
assigning weights to the values of said key that are used to access said data;
establishing key elements corresponding to the values of said key that are used to access said data, said key elements including a corresponding index value for said data table;
selecting key elements for values of said key that are linked to a given hash index value and that have a selected weight, and chaining the selected key elements to the given hash index value in said hash table; and
responding to a data access request for a supplied value of said key by probing the chained key elements of said hash table to locate a key element for the supplied key, along with the data table index value of such key element, and accessing data stored in the data table using the located data table index value.
5 Assignments
0 Petitions
Accused Products
Abstract
Accessed memory locations of a data table are assigned weights based on usage history, and a hash table chains the highest-weight key values to an abbreviated hash index. The hash table includes keys having at least a predetermined weight so that highly accessed keys are identified by hashing. Additionally, the keys chained to a given hash index are ordered based on their weight in order to optimize the overall data retrieval time. The weights assigned to accessed keys are updated over time so that the content of the hash table is adaptively updated to suit the current table look-up requirements.
-
Citations
6 Claims
-
1. A method of accessing data stored in an indexed data table for various values of a key, the method comprising the step of:
-
establishing a hash table having hash index values and a hash function that links the values of said key to said hash index values;
assigning weights to the values of said key that are used to access said data;
establishing key elements corresponding to the values of said key that are used to access said data, said key elements including a corresponding index value for said data table;
selecting key elements for values of said key that are linked to a given hash index value and that have a selected weight, and chaining the selected key elements to the given hash index value in said hash table; and
responding to a data access request for a supplied value of said key by probing the chained key elements of said hash table to locate a key element for the supplied key, along with the data table index value of such key element, and accessing data stored in the data table using the located data table index value. - View Dependent Claims (2, 3, 4, 5, 6)
-
Specification