Distributed storage management system having a cache server and method therefor
First Claim
1. A computer-implemented process for storing and managing objects in a distributed information storage management system including a plurality of clients, an object server for storing an object, a cache server and a centralized server having information stored therein regarding the location of the object, the plurality of clients and the cache server, and identifying an association between two or more of the plurality of clients and the cache server, the computer-implemented process comprising the steps of:
- a) the centralized server receiving a request from one of the plurality of clients as a requesting client for retrieval of the object, and in response thereto sending a request for the object to the cache server associated with the requesting client;
b) sending a copy of the object requested in step a) from the cache server to said requesting client if the object is present in said cache server;
c) sending a copy of the object requested in step a) from the object server to said requesting client if the object is not present in the cache server; and
d) sending another copy of the object requested in step a) from the object server to the cache server after step c) begins, wherein steps b), c) and d) are initiated by the centralized server based on the information stored in said centralized server.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention is directed to a method and system for storing and managing objects, such as binary large objects (blobs) in a digital library system which includes a plurality of clients, an object server for storing an object, a cache server for storing an copy of the object, and a centralized server for storing information identifying the object as being stored in the object server and associating one or more of the clients with the cache server, in which one of the clients, as a requesting client, requests retrieval of an object, a copy of the requested object is sent from the cache server to the requesting client if the object is stored in said cache server, and a copy of said object is sent from the object server to said requesting client if the object is not stored in the cache server; and a copy of the requested object is sent from the object server to the cache server after the object server sends the object to the client, in which the object sent to the client is made available to the client regardless of whether sending of the copy of the object to the cache server is completed.
-
Citations
28 Claims
-
1. A computer-implemented process for storing and managing objects in a distributed information storage management system including a plurality of clients, an object server for storing an object, a cache server and a centralized server having information stored therein regarding the location of the object, the plurality of clients and the cache server, and identifying an association between two or more of the plurality of clients and the cache server, the computer-implemented process comprising the steps of:
-
a) the centralized server receiving a request from one of the plurality of clients as a requesting client for retrieval of the object, and in response thereto sending a request for the object to the cache server associated with the requesting client; b) sending a copy of the object requested in step a) from the cache server to said requesting client if the object is present in said cache server; c) sending a copy of the object requested in step a) from the object server to said requesting client if the object is not present in the cache server; and d) sending another copy of the object requested in step a) from the object server to the cache server after step c) begins, wherein steps b), c) and d) are initiated by the centralized server based on the information stored in said centralized server. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented process for storing and managing objects in a distributed information storage management system including a plurality of clients, an object server for storing an object, a cache server and a centralized server for storing information regarding the location of the object, the object server, the cache server and the plurality of clients, the computer-implemented process comprising the steps of:
-
a) the centralized server receiving a request from a first one of the plurality of clients as a first requesting client for storing a copy of the object in the cache server, and in response thereto sending a request for the object to the object server; b) sending a copy of the object requested in step a) from said object server to said cache server and storing said copy of the object in the cache server; c) the centralized server receiving a request from a second one of the plurality of clients as a second requesting client for retrieving a copy of the object, and in response thereto sending a request for the object to the cache server; and d) sending said copy of the object requested in step c) from the cache server to said second requesting client in response to the request to the cache server in step c). - View Dependent Claims (7, 8)
-
-
9. A computer-readable medium of instructions for causing a computer to store and manage objects in a distributed information storage management system including a plurality of clients, an object server for storing an object, a cache server and a centralized server having information stored therein regarding the location of the object, the plurality of clients and the cache server, and identifying an association between two or more of the plurality of clients and the cache server, the computer-readable medium of instructions comprising:
-
means for the centralized server receiving a request from one of the plurality of clients as a requesting client to retrieve the object, and in response thereto sending a request for the object to the cache server if the cache server is associated with the requesting client; means for sending a copy of the object requested from the cache server to said requesting client if the object is present in said cache server; means for sending a request for the object from the centralized server to the object server, if the object is not present in said cache server, means for sending a copy of the object requested from the object server to said requesting client if the object is not present in the cache server; and means for sending another copy of the object requested from the object server to the cache server after said means for sending the copy of the object requested from the object server begins sending the object, wherein said means for sending a copy of the object requested from the cache server, said means for sending a copy of the object requested from the object server and said means for sending another copy of the object begin operating in response to the centralized server based on the information stored in said centralized server. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A computer-readable medium of instructions for causing a computer to store and manage objects in a distributed information storage management system including a plurality of clients, an object server for storing an object, a cache server and a centralized server for storing information regarding the location of the object, the object server, the cache server and the plurality of clients, the computer-readable medium of instructions comprising:
-
means for storing a copy of the object in the cache server in response to the centralized server receiving a request from a first one of the plurality of clients as a first requesting client to store the object in the cache server, and in response thereto sending a request for the object to the object server; means for sending a copy of the object requested from said object server to said cache server and storing said copy of the object in the cache server; means for the centralized server receiving a request from a second one of the plurality of clients as a second requesting client to retrieve a copy of the object, and in response thereto sending a request for the object to the cache server; and means for sending said copy of the requested object from the cache server to said second requesting client in response to the request to the cache server. - View Dependent Claims (15, 16)
-
-
17. A programmable apparatus directed by a computer program for storing and managing objects, comprised of:
-
a plurality of clients; an object server for storing an object; a cache server; and a centralized server having information which identifies an association between two or more of said plurality of clients and said cache server, wherein when said centralized server receives a request from one of said plurality of clients as a requesting client for retrieval of said object said centralized server based on the association information, directs said cache server to send a copy of said object to said requesting client if an instance of said object is stored in said cache server, otherwise said centralized server directs said object server to send an copy of said object to said requesting client. - View Dependent Claims (18, 19)
-
-
20. A programmable apparatus directed by a computer program for storing and managing objects, comprised of:
-
a plurality of clients; an object server for storing an object; a cache server for storing an instance of said object; and a centralized server for storing information identifying said object as being stored in said object server and associating two or more of said plurality of clients with said cache server, wherein a first requesting client from among said plurality of clients sends a request for said object to said centralized server and in response to said request said centralized server sends a request to said cache server to send a copy of said instance of said object to said first requesting client if said first requesting client is a member of said two or more clients associated with said cache server, otherwise said centralized server sends a request to said object server to send a copy of said object to said first requesting client. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
Specification