O processo de recuperação em geral está bastante interligado às funções do sistema operacional; em particular, o buffering de páginas de disco do banco de dados no cache de memória principal do SGBD. Normalmente, várias páginas de disco que incluem os itens de dados a serem atualizados são mantidas em cache nos buffers da memória principal e, depois, atualizados na memória antes de serem gravados de volta no disco.
Em geral, é conveniente considerar a recuperação em relação às páginas de disco (blocos) do banco de dados. Normalmente, uma coleção de buffers na memória, chamada cache do SGBD, é mantida sob o controle do SGBD com a finalidade de manter esses buffers. Uma tabela dentro do cache é usada para acompanhar quais itens de banco de dados estão nos buffers. Isso pode ser uma tabela de entradas <Endereço_página_disco, localização_buffer, ...>.
Quando o SGBD solicita ação em algum item, primeiro ele verifica a tabela no cache para determinar se a página de disco que contém o item está no cache do SGBD. Se não estiver, o item precisa ser localizado no disco, e as páginas de disco apropriadas são copiadas para o cache. Pode ser necessário substituir (ou esvaziar) alguns dos buffers de cache para criar espaço disponível para o novo item.
Clique aqui para saber mais sobre mecanismos de substituição de página.
Para saber mais sobre mecanismos de substituição de página, pesquise pelas técnicas de Usada Menos Recentemente (MRU) ou First-In-First-Out (FIFO). Atualmente há estratégias mais específicas para SGBDs, como DBMIN ou Least-Likely-to-Use.
X