Portable Hash-Based Key Location Mechanism
AssigneeRed Hat, Inc.
InventorsGalder Zamarreno, Manik Surtani
Life of this patent
Estimating the term…
Abstract
A system and method for locating a data entry in a server cluster using a hash function and hash codes that can be implemented on any platform, system, or in any language. In one embodiment, a client hashes a key corresponding to a data entry to be accessed from the server cluster. The hashing is performed with a hash function that is used by a cluster of servers to provide a distributed data repository. The client further compares the hash result with hash codes of the servers to identify one of the servers as a key holder that stores the data entry. The client then requests the key holder for access to the data entry.
Claims20
A method, performed by a client computer system programmed to perform the following, comprising:
- hashing, by the client computer system, a key with a hash function which is used by a cluster of servers to provide a distributed data repository, the key corresponding to a data entry to be accessed by the client computer system;
- identifying, by the client computer system, one of the servers as a key holder that stores the data entry using a hash result compared with hash codes of the servers;
- and
- requesting, by the client computer system, the key holder for access to the data entry.
A system comprising:
- a data storage device to store server topology information;
- and
- a client computer system coupled to the data storage and a cluster of servers that provide a distributed data repository, the client computer system comprising:
- a key locator module to hash a key with a hash function which is used by the cluster of servers, the key corresponding to a data entry to be accessed by the client computer system, and to identify, using a hash result compared with hash codes of the servers, one of the servers as a key holder that stores the data entry;
- and
- a communication module to request the key holder for access to the data entry.
A computer readable storage medium including instructions that, when executed by a processing system, cause the processing system to perform a method comprising:
- hashing, by a client computer system, a key with a hash function which is used by a cluster of servers to provide a distributed data repository, the key corresponding to a data entry to be accessed by the client computer system;
- identifying, by the client computer system, one of the servers as a key holder that stores the data entry using a hash result compared with hash codes of the servers;
- and
- requesting, by the client computer system, the key holder for access to the data entry.
Dependencies are inferred from the claim text.