The present invention provides a method and apparatus for partitioning a
buffer cache for dynamically mapping data blocks with a particular
replacement strategy based on the associated table's access and/or usage
patterns. According to the method, a buffer cache in a computer system is
managed by dividing the buffer cache into multiple buffer pools. In
managing the buffer cache, when a data item is requested, it is first
determined whether the requested data item is stored in a buffer within
the buffer cache. If the requested data item is not stored in a buffer in
the buffer cache, then a particular buffer pool in the buffer cache is
dynamically selected for storing the requested data item. Once the
particular buffer pool is selected, the requested data item is stored into
a buffer in the particular buffer pool.
La présente invention fournit une méthode et un appareil pour diviser une cachette d'amortisseur pour tracer dynamiquement des blocs de données en stratégie particulière de remplacement basée sur les modèles de l'accès et/ou de l'utilisation de la table associée. Selon la méthode, une cachette d'amortisseur dans un système informatique est contrôlée en divisant la cachette d'amortisseur en pools de tampons multiples. En contrôlant la cachette d'amortisseur, quand une donnée élémentaire est demandée, on le détermine d'abord si la donnée élémentaire demandée est stockée dans un amortisseur dans la cachette d'amortisseur. Si la donnée élémentaire demandée n'est pas stockée dans un amortisseur dans la cachette d'amortisseur, alors un pool de tampons particulier dans la cachette d'amortisseur est dynamiquement choisi pour stocker la donnée élémentaire demandée. Une fois que le pool de tampons particulier est choisi, la donnée élémentaire demandée est stockée dans un amortisseur dans le pool de tampons particulier.