Patent ID: 6594751
Filing Date: 2003-07-15
Classification: G06F

Abstract:
Apparatus for segregating data within a cache in a database system wherein pointers in said cache are virtual address pointers translated from persistent address pointers, comprising:a) means for providing a transient relocation optimization queue to organize virtual address space and recycle said virtual address space across a series of transactions by a single client application having a plurality of flngers to designate positions in said queue, and a plurality of entries corresponding to cached data in the cache, b) means for delimiting said queue into a plurality of sections with said fingers, a first section for containing entries for data used in a current transaction by said client application, a second section for containing entries that can be used by said client application without updating pointers, and a third section containing entries that cannot be used by said client application without updating pointers; c) means for servicing requests from said client application for access to said data in said cache and for data not yet in said cache; d) means for incorporating data into said cache that is not yet in said cache and translating pointers in said queue to update pointer information to reflect said incorporated data in said queue; e) means for maintaining said updated pointer information for data previously incorporated into said cache; f) means for removing data from said cache as it is no longer required by said client application and translating pointers in said queue to update pointer information to reflect said removed data in said queue; g) means for updating pointers when providing access to said data corresponding to said entries in said third section of said queue, thereby providing fast access to data in said cache corresponding to said first and said second sections of said queue; and h) means for incrementally recycling said virtual address space used by entries in the second and third sections of said queue for use by data being incorporated into the cache, such that the address space so recycled will tend to be the virtual address space which is least recently used.