Claims Analysis
Total Claims: 47
Claim 1
Independent Claim
134 words
A method for managing a buffer cache in a computer system, the method comprising the steps of: dividing the buffer cache into multiple buffer pools; associating a replacement strategy with each of the multiple buffer pools, wherein at least two of the multiple buffer pools are associated with different replacement strategies; determining whether requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting a particular buffer pool in said buffer cache to store said requested data item, wherein said particular buffer pool is dynamically selected from among said multiple buffer pools based on the replacement strategy associated with the particular buffer pool; and storing said requested data item in a particular buffer contained in said particular buffer pool.
Claim 2
Independent Claim
134 words
A method for managing a buffer cache in a computer system, the method comprising the steps of: dividing the buffer cache into multiple buffer pools; associating a replacement strategy with each of the multiple buffer pools, wherein at least two of the multiple buffer pools are associated with different replacement strategies; determining whether requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting a particular buffer pool in said buffer cache to store said requested data item, wherein said particular buffer pool is dynamically selected from among said multiple buffer pools based on the replacement strategy associated with the particular buffer pool; and storing said requested data item in a particular buffer contained in said particular buffer pool.
Claim 3
Dependent Claim
49 words
The method of claim 1 , wherein the step of determining whether said requested data item is stored in said buffer cache comprises the step of searching hash chains associated with a hash table, wherein the hash chains provide links to all buffers contained in said multiple buffer pools.
Claim 4
Dependent Claim
43 words
The method of claim 1 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of determining said particular buffer pool based on a particular type of information contained in said requested data item.
Claim 5
Dependent Claim
57 words
The method of claim 1 , wherein the step of selecting the particular buffer pool to store the requested data item comprises the step of determining the particular buffer pool based on a user input parameter, wherein the user input parameter specifies the particular buffer pool that is to be used to store said requested data item.
Claim 6
Dependent Claim
39 words
The method of claim 1 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of selecting said particular buffer pool based on the size of the particular buffer pool.
Claim 7
Dependent Claim
58 words
The method of claim 1 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of selecting the particular buffer pool based on a hint parameter, wherein the hint parameter identifies a particular reason as to why a particular object associated with the requested data item is being accessed.
Claim 8
Dependent Claim
51 words
The method of claim 1 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of executing an optimizing process, wherein the optimizing process creates a query plan that is used to map data blocks into buffers in said particular buffer pool.
Claim 9
Dependent Claim
34 words
The method of claim 1 , wherein the step of selecting the particular buffer pool includes the step of selecting the particular buffer pool based on a logical container of the requested data item.
Claim 10
Dependent Claim
55 words
The method of claim 1 , wherein the step of storing said requested data item in the buffer contained in said particular buffer pool further comprises the steps of linking the buffer into a hash chain in a hash table, wherein said hash chains are used to link all buffers stored in said buffer cache.
Claim 11
Dependent Claim
82 words
The method of claim 1 , further comprising the step of: after storing the requested data item, selecting a second buffer pool based on a second hint parameter, wherein the second hint parameter identifies a reason as to why a particular object associated with the requested data item is being accessed a second time; and moving the requested data item from the particular buffer pool to the second buffer pool, wherein the second buffer pool is distinct from the particular buffer pool.
Claim 12
Dependent Claim
52 words
The method of claim 1 , wherein: the step of selecting a buffer pool further includes the step of dynamically allocating a buffer pool in said buffer cache; and the step of storing the requested data item includes the step of storing the requested data item within the dynamically allocated buffer pool.
Claim 13
Dependent Claim
33 words
The method of claim 1 , wherein step of dividing the buffer cache into multiple buffer pools includes the step of associating multiple latches with one or more of the multiple buffer pools.
Claim 14
Dependent Claim
49 words
The method of claim 9 , wherein the step of storing the requested data item in the particular buffer includes the step of associating a buffer pool ID with the particular buffer, wherein the buffer pool ID identifies the particular buffer pool in which the particular buffer is stored.
Claim 15
Dependent Claim
57 words
The method of claim 13 , further including the steps of: moving the particular buffer to a second buffer pool, wherein the second buffer pool is distinct from the particular buffer pool; and modifying the buffer pool ID associated with the particular buffer to reflect that the particular buffer has been moved to the second buffer pool.
Claim 16
Dependent Claim
55 words
The method of claim 13 , further includes the step of using the links in the hash table and the buffer pool IDs associated with the particular buffers, to provide an orthogonal search method for locating a specific buffer containing a particular data block independent of the buffer pool in which the buffer is stored.
Claim 17
Dependent Claim
159 words
A computer-readable medium having sequences of instructions for managing a buffer cache in a computer system, the sequences of insertions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: dividing the buffer cache into multiple buffer pools; associating a replacement strategy with each of the multiple buffer pools, wherein at least two of the multiple buffer pools are associated with different replacement strategies; determining whether a requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting a particular buffer pool in said buffer cache to store said requested data item, wherein said particular buffer pool is dynamically selected from among said multiple buffer pools based on the replacement strategy associated with the particular buffer pool; and storing said requested data item in a particular buffer contained in said particular buffer pool.
Claim 18
Dependent Claim
159 words
A computer-readable medium having sequences of instructions for managing a buffer cache in a computer system, the sequences of insertions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: dividing the buffer cache into multiple buffer pools; associating a replacement strategy with each of the multiple buffer pools, wherein at least two of the multiple buffer pools are associated with different replacement strategies; determining whether a requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting a particular buffer pool in said buffer cache to store said requested data item, wherein said particular buffer pool is dynamically selected from among said multiple buffer pools based on the replacement strategy associated with the particular buffer pool; and storing said requested data item in a particular buffer contained in said particular buffer pool.
Claim 19
Dependent Claim
50 words
The computer-readable medium of claim 16 , wherein the step of determining whether said requested data item is stored in said buffer cache comprises the step of searching hash chains associated with a hash table, wherein the hash chains provide links to all buffers contained in said multiple buffer pools.
Claim 20
Dependent Claim
44 words
The computer-readable medium of claim 16 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of determining said particular buffer pool based on a particular type of information contained in said requested data item.
Claim 21
Dependent Claim
58 words
The computer-readable medium of claim 16 , wherein the step of selecting the particular buffer pool to store the requested data item comprises the step of determining the particular buffer pool based on a user input parameter, wherein the user input parameter specifies the particular buffer pool that is to be used to store said requested data item.
Claim 22
Dependent Claim
40 words
The computer-readable medium of claim 16 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of selecting said particular buffer pool based on the size of the particular buffer pool.
Claim 23
Dependent Claim
59 words
The computer-readable medium of claim 16 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of selecting the particular buffer pool based on a hint parameter, wherein the hint parameter identifies a particular reason as to why a particular object associated with the requested data item is being accessed.
Claim 24
Dependent Claim
52 words
The computer-readable medium of claim 16 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of executing an optimizing process, wherein the optimizing process creates a query plan that is used to map data blocks into buffers in said particular buffer pool.
Claim 25
Dependent Claim
86 words
The computer-readable medium of claim 16 , further comprising instructions for performing the step of: after storing the requested data item, selecting a second buffer pool based on a second hint parameter, wherein the second hint parameter identifies a reason as to why a particular object associated with the requested data item is being accessed a second time; and moving the requested data item from the particular buffer pool to the second buffer pool, wherein the second buffer pool is distinct from the particular buffer pool.
Claim 26
Dependent Claim
56 words
The computer-readable medium of claim 16 , wherein: the step of selecting a buffer pool further includes instructions for performing the step of dynamically allocating a buffer pool in said buffer cache; and the step of storing the requested data item includes the step of storing the requested data item within the dynamically allocated buffer pool.
Claim 27
Dependent Claim
178 words
A computer system for managing a buffer cache, the computer system comprising: a memory, one or more processors coupled to the memory; and a set of computer instructions contained in the memory, the set of computer instructions including computer instructions which when executed by the one or more processors, cause the one or more processors to perform the steps of dividing the buffer cache into multiple buffer pools; associating a replacement strategy with each of the multiple buffer pools, wherein at least two of the multiple buffer pools are associated with different replacement strategies; determining whether a requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting a particular buffer pool in said buffer cache to store said requested data item, wherein said particular buffer pool is dynamically selected from among said multiple buffer pools based on the replacement strategy associated with the particular buffer pool; and storing said requested data item in a particular buffer contained in said particular buffer pool.
Claim 28
Dependent Claim
178 words
A computer system for managing a buffer cache, the computer system comprising: a memory, one or more processors coupled to the memory; and a set of computer instructions contained in the memory, the set of computer instructions including computer instructions which when executed by the one or more processors, cause the one or more processors to perform the steps of dividing the buffer cache into multiple buffer pools; associating a replacement strategy with each of the multiple buffer pools, wherein at least two of the multiple buffer pools are associated with different replacement strategies; determining whether a requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting a particular buffer pool in said buffer cache to store said requested data item, wherein said particular buffer pool is dynamically selected from among said multiple buffer pools based on the replacement strategy associated with the particular buffer pool; and storing said requested data item in a particular buffer contained in said particular buffer pool.
Claim 29
Dependent Claim
48 words
The system of claim 25 wherein the step of determining whether said requested data item is stored in said buffer cache comprises the step of searching hash chains associated with a hash table, wherein the hash chains provide links to all buffers contained in said multiple buffer pools.
Claim 30
Dependent Claim
43 words
The system of claim 25 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of determining said particular buffer pool based on a particular type of information contained in said requested data item.
Claim 31
Dependent Claim
57 words
The system of claim 25 , wherein the step of selecting the particular buffer pool to store the requested data item comprises the step of determining the particular buffer pool based on a user input parameter, wherein the user input parameter specifies the particular buffer pool that is to be used to store said requested data item.
Claim 32
Dependent Claim
39 words
The system of claim 25 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of selecting said particular buffer pool based on the size of the particular buffer pool.
Claim 33
Dependent Claim
58 words
The system of claim 25 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of selecting the particular buffer pool based on a hint parameter, wherein the hint parameter identifies a particular reason as to why a particular object associated with the requested data item is being accessed.
Claim 34
Dependent Claim
51 words
The system of claim 25 , wherein the step of selecting the particular buffer pool to store said requested data item comprises the step of executing an optimizing process, wherein the optimizing process creates a query plan that is used to map data blocks into buffers in said particular buffer pool.
Claim 35
Dependent Claim
82 words
The system of claim 25 , further comprising the step of: after storing the requested data item, selecting a second buffer pool based on a second hint parameter, wherein the second hint parameter identifies a reason as to why the particular object associated with the requested data item is being accessed a second time; and moving the requested data item from the particular buffer pool to the second buffer pool, wherein the second buffer pool is distinct from the particular buffer pool.
Claim 36
Dependent Claim
52 words
The system of claim 25 , wherein: the step of selecting a buffer pool further includes the step of dynamically allocating a buffer pool in said buffer cache; and the step of storing the requested data item includes the step of storing the requested data item within the dynamically allocated buffer pool.
Claim 37
Dependent Claim
34 words
The method of claim 1 , further comprising the step of determining whether said data item is likely to be soon accessed again based on the nature of the operation that caused the request.
Claim 38
Dependent Claim
64 words
The method of claim 6 , wherein the step of selecting the particular buffer pool based on a hint parameter includes the step of selecting said particular buffer pool based on a value associated with the hint parameter, wherein said value provides an indication as to whether the requested data item is likely to be accessed again in a relatively short period of time.
Claim 39
Dependent Claim
38 words
The computer-readable medium of claim 16 , further comprising instructions for performing the step of determining whether said data item is likely to be soon accessed again based on the nature of the operation that caused the request.
Claim 40
Dependent Claim
65 words
The computer-readable medium of claim 21 , wherein the step of selecting the particular buffer pool based on a hint parameter includes the step of selecting said particular buffer pool based on a value associated with the hint parameter, wherein said value provides an indication as to whether the requested data item is likely to be accessed again in a relatively short period of time.
Claim 41
Dependent Claim
34 words
The system of claim 25 , further comprising the step of determining whether said data item is likely to be soon accessed again based on the nature of the operation that caused the request.
Claim 42
Dependent Claim
64 words
The system of claim 30 , wherein the step of selecting the particular buffer pool based on a hint parameter includes the step of selecting said particular buffer pool based on a value associated with the hint parameter, wherein said value provides an indication as to whether the requested data item is likely to be accessed again in a relatively short period of time.
Claim 43
Independent Claim
223 words
A method for managing a buffer cache in a computer system, the method comprising the steps of: dividing the buffer cache into multiple buffer pools, wherein said multiple buffer pools include at least a first buffer pool and a second buffer pool; determining whether a requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting said first buffer pool in said buffer cache to store said requested data item, wherein said first buffer pool is dynamically selected from among said multiple buffer pools; and storing said requested data item in a particular buffer currently contained in said first buffer pool; wherein said first buffer pool has a first buffer pool size that is based on a first number of buffers that currently reside in said first buffer pool and said second buffer pool has a second buffer pool size that is based on a second number of buffers that currently reside in said second buffer pool; and wherein the method further comprises the step of dynamically changing said first buffer pool size and said second buffer pool size by modifying links associated with said particular buffer to remove said particular buffer from said first buffer pool and to add said particular buffer to said second buffer pool.
Claim 44
Independent Claim
223 words
A method for managing a buffer cache in a computer system, the method comprising the steps of: dividing the buffer cache into multiple buffer pools, wherein said multiple buffer pools include at least a first buffer pool and a second buffer pool; determining whether a requested data item is stored in a buffer in said buffer cache; if said requested data item is not stored in said buffer cache, then selecting said first buffer pool in said buffer cache to store said requested data item, wherein said first buffer pool is dynamically selected from among said multiple buffer pools; and storing said requested data item in a particular buffer currently contained in said first buffer pool; wherein said first buffer pool has a first buffer pool size that is based on a first number of buffers that currently reside in said first buffer pool and said second buffer pool has a second buffer pool size that is based on a second number of buffers that currently reside in said second buffer pool; and wherein the method further comprises the step of dynamically changing said first buffer pool size and said second buffer pool size by modifying links associated with said particular buffer to remove said particular buffer from said first buffer pool and to add said particular buffer to said second buffer pool.
Claim 45
Dependent Claim
49 words
The method of claim 40 , wherein the step of storing the requested data item in the particular buffer includes the step of associating a buffer pool ID with the particular buffer, wherein the buffer pool ID identifies the particular buffer pool in which the particular buffer is stored.
Claim 46
Dependent Claim
47 words
The method of claim 41 , wherein the step of modifying said links associated with said particular buffer further includes the step of modifying the buffer pool ID associated with the particular buffer to reflect that the particular buffer has been moved to the second buffer pool.
Claim 47
Dependent Claim
86 words
The method of claim 40 , wherein: said first buffer pool uses a first replacement strategy for determining which buffers that reside in said first buffer pool are to be over written with new data items that need to be stored in said first buffer pool; and said second buffer pool uses a second replacement strategy for determining which buffers that reside in said second buffer pool are to be over written with new data items that need to be stored in said second buffer pool.