A method of segregating data within a client cache in an objected-oriented database system wherein pointers stored in said cache are virtual address pointers translated from persistent address pointers, comprising the steps of: a) bringing a page of data into a cache of a client computer; b) assigning locations to the targets of all pointers on that page of data in a virtual memory space of the client computer; c) translating pointers on the page of data to a virtual memory address of the virtual memory space; d) providing a relocation optimization queue to manage and index virtual address space and order address space binding entries by recency of use, the relocation optimization queue having a plurality of fingers to designate positions in said queue, and a plurality of address space binding entries corresponding to cached data in the cache; e) delimiting said queue into a plurality of sections with said fingers, a first section for containing address space binding entries for data used in a current transaction by a client application, a second section for containing address space binding entries that are not displaced and so can be used by said client application without updating pointers to virtual address space, and a third section containing address space binding entries that cannot be used by said client application without updating said pointers; f) servicing requests from said client application for access to said data in said cache and for data not yet in said cache; g) incorporating new data into said cache that is not yet in said cache and translating said pointers to update said pointers stored in said cache and placing address space binding entries in said queue to reflect said incorporating data in said queue; h) removing data from said cache as it is no longer required by said client application and translating said pointers stored in said cache to persistent address to update pointer information and reflecting said removed data in said queue; and i) updating pointers stored in said cache when providing access to said data corresponding to said address space binding entries in said third section of said queue, thereby providing fast access to data in said cache corresponding to said first and second sections of said queue. a) bringing a page of data into a cache of a client computer; b) assigning locations to the targets of all pointers on that page of data in a virtual memory space of the client computer; c) translating pointers on the page of data to a virtual memory address of the virtual memory space; d) providing a relocation optimization queue to manage and index virtual address space and order address space binding entries by recency of use, the relocation optimization queue having a plurality of fingers to designate positions in said queue, and a plurality of address space binding entries corresponding to cached data in the cache; e) delimiting said queue into a plurality of sections with said fingers, a first section for containing address space binding entries for data used in a current transaction by a client application, a second section for containing address space binding entries that are not displaced and so can be used by said client application without updating pointers to virtual address space, and a third section containing address space binding entries that cannot be used by said client application without updating said pointers; f) servicing requests from said client application for access to said data in said cache and for data not yet in said cache; g) incorporating new data into said cache that is not yet in said cache and translating said pointers to update said pointers stored in said cache and placing address space binding entries in said queue to reflect said incorporating data in said queue; h) removing data from said cache as it is no longer required by said client application and translating said pointers stored in said cache to persistent address to update pointer information and reflecting said removed data in said queue; and i) updating pointers stored in said cache when providing access to said data corresponding to said address space binding entries in said third section of said queue, thereby providing fast access to data in said cache corresponding to said first and second sections of said queue.