Data processing: database and file management or data structures – Database design – Data structure types
Reexamination Certificate
1998-02-17
2001-07-03
Black, Thomas (Department: 2171)
Data processing: database and file management or data structures
Database design
Data structure types
C707S793000
Reexamination Certificate
active
06256632
ABSTRACT:
FIELD OF THE INVENTION
This invention relates in general to computer software, and in particular to a method and system for managing shared state information in a network environment. More particularly, the present invention relates to a method and system by which a plurality of clients can flexibly determine which information is cached locally and which information is retrieved from a server.
BACKGROUND OF THE INVENTION
In real-time network computing environments, a plurality of hosts typically must share one or more pieces of dynamic information. This shared state might include traditional publish-subscribe data such as stock quotes or news headlines. It might include dynamic information, such as content of an HTML page. In collaborative environments, the shared information might simply describe the presence or absence of other pieces of shared information.
In most cases, this shared state is managed by a server host, and client hosts can update the state and learn about its current value. Such traditional client-server systems have used either full-caching or no-caching to implement distributed state management.
Full-caching systems replicate all shared data locally at all of the clients. Whenever the data changes, the server transmits an update notification to all of the clients informing them to update their local data caches. All client application requests to read data are consequently handled by accessing the local cache, thereby gaining low request-response latency at the cost of significant network bandwidth consumption whenever an update occurs. Existing protocols such as the Lotus Notification Service Transport Protocol (NSTP) and IBM Interactive Universe (InVerse) server employ this approach.
No-caching systems maintain no state locally at the client and rely on a server interaction to perform all client application read and write requests. These systems only transmit the data that is specifically needed by each client at the expense of slower application response time and at the risk of potentially transmitting the same information multiple times over the network to a client. Most World-Wide Web applications employ this approach.
These two techniques require the system to choose an extreme between high network bandwidth consumption and fast client response time. However, in many environments, neither of these extremes is desirable. This is particularly true in synchronous groupware systems that must simultaneously support interactive response time and manage considerable amounts of shared state. Previous systems that have attempted to merge these two extremes have simply opted to statically mark some data as fully-cached and mark the remaining data as non-cached. However, this hybrid approach does not account for the fact that different clients manipulate different information, meaning that each client demands a different prioritization of interactive response time and bandwidth consumption on each piece of shared information
Therefore, a need exists for a method and system that supports partial caching of shared state information. Moreover, the decisions about what to cache should be made at run-time, so that a single system can support full-caching, no-caching, or any point in between these two extremes based on data update rates, client request rates, and available network and server resources.
SUMMARY OF THE INVENTION
An object of the present invention is to provide, within a network environment, a method for simultaneously supporting full-caching and no-caching semantics within a single system.
Another object of the present invention is to enable each element of shared data to employ different caching semantics at each host in the networked environment.
Yet another object of the present invention is to enable the caching semantics for each element of shared data at each host to be changed dynamically during the application's execution.
To achieve the foregoing objects and in accordance with the purpose of the invention as broadly described herein, a method and system are disclosed for flexibly managing the caching of shared data in a networked environment by using client-side data descriptors and data blocks. These and other features, aspects, and advantages of the present invention will become better understood with reference to the following description, appended claims, and accompanying drawings.
REFERENCES:
patent: 5737758 (1998-04-01), Mathew
patent: 5737759 (1998-04-01), Mathew
patent: 5778438 (1998-07-01), Mathew
Fraenkel Michael L.
Nguyen Binh Q.
Singhal Sandeep Kishan
Black Thomas
Clay A. Bruce
International Business Machines - Corporation
Mills John G.
Myers Bigel Sibley & Sajovec P.A.
LandOfFree
Method and system for enabling dynamic cache structures in a... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for enabling dynamic cache structures in a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for enabling dynamic cache structures in a... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2543792