System and method for maintaining a shared cache look-up table
First Claim
1. A method of retrieving data items in an information system, the method comprising:
- defining a group of interconnected clients within the information system, wherein the clients have cache memories;
maintaining a group cache look-up table for the group comprising entries of data identifiers which identify data items cached by the clients within the group and client identifiers which identify each client at which each of the identified data items are cached;
initiating a data item request with one of the clients within the group;
directing the data item request to the group cache look-up table; and
retrieving the requested data item from the associated cache memory of any of the clients identified by the client identifiers if the requested data item has an associated data identifier entry in the group cache look-up table.
7 Assignments
0 Petitions
Accused Products
Abstract
An information system and method for reducing workload load on servers in an information system network. The system defines a group of interconnected clients which have associated cache memories. The system maintains a shared group cache look-up table for the group having entries which identify data items cached by the clients within the group and identify the clients at which the data items are cached. Each client in the group has access to the group cache look-up table, and any client or group can cache any data item. The system can include a hierarchy of groups, with each group having a group cache look-up table. The group cache look-up tables minimize requests for data items outside the groups and greatly minimize the service load on servers having popular data items.
-
Citations
27 Claims
-
1. A method of retrieving data items in an information system, the method comprising:
-
defining a group of interconnected clients within the information system, wherein the clients have cache memories; maintaining a group cache look-up table for the group comprising entries of data identifiers which identify data items cached by the clients within the group and client identifiers which identify each client at which each of the identified data items are cached; initiating a data item request with one of the clients within the group; directing the data item request to the group cache look-up table; and retrieving the requested data item from the associated cache memory of any of the clients identified by the client identifiers if the requested data item has an associated data identifier entry in the group cache look-up table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. An information system comprising:
-
a plurality of clients having cache memory for caching data items; an interconnect which interconnects the plurality of clients; means for defining a group within the plurality of interconnected clients; means for maintaining a group cache look-up table for the group which identifies data items cached by the clients within the group and identifies the clients at which each of the data items are cached; and means for directing a data item request to the group cache look-up table and for retrieving the requested data item from any of the clients identified by the group cache look-up table as caching the requested data item. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A computer program having program code means for storing and retrieving data items in an information system comprising a plurality of client data processing systems having cache memories and interconnected by a communications link, the computer program comprising:
-
first program code means, in a first of the plurality of client data processing systems, for defining a group of the plurality of client data processing systems; second program code means, in the first client data processing system, for maintaining at least a portion of a group cache look-up table for the group comprising entries of data identifiers which identify data items cached by the client data processing systems within the group and client identifiers which identify the client data processing systems at which the associated data items are cached; third program code means, in the first client data processing system, for initiating a data item request; fourth program code means, in the first client data processing system, for directing the data item request to the group cache look-up table; and fifth program code means, in the first client data processing system, for retrieving the requested data item from the cache memory of at least one of the client data processing systems identified by the client identifier if the data item has an associated data identifier entry in the group cache look-up table.
-
Specification