3 - Buffer

3.1. Cache de leitura (com otimização por estatísticas)

Uma das funcionalidades presentes em vários SGBDs refere-se à memória cache com utilização de estatísticas de acesso a dados.

Aparentemente, as operações de consulta e atualização de dados sobre um banco de dados é aleatória: qualquer dado tem a mesma probabilidade de ser escolhido para uma operação de consulta ou gravação. Entretanto, é notado que há tabelas e/ou registros que são mais comumente acessados pelos sistemas de informação. O gerenciamento de estatísticas de acesso registra quais tabelas e quais registros são mais frequentemente consultados.

A ideia por traz dessa funcionalidade é tentar manter em memória RAM (que é mais de 1.000 vezes mais rápida que os discos rígidos) essas informações frequentemente acessadas. Dessa forma, quando o sistema de informação solicita tal conjunto de registros, ao invés de eles serem consultados do disco rígido onde estão armazenados, eles são consultados da memória RAM, gerando uma resposta muito mais rápida. O SGBD utiliza cálculos de probabilidade para aumentar as chances de que as informações desejadas estejam previamente mantidas em memória RAM.

O gerenciador de estatísticas diz qual informação é mais utilizada, mas é o controlador de cache de leitura o responsável por manter as informações nessa parte da memória RAM. Quanto maior a área de cache, mais informação pode ser mantida em memória, porém, menos espaço haverá para as outras operações do banco de dados e do próprio sistema operacional.

Normalmente há duas formas de se gerenciar esse espaço de cache:

Copyright © 2014 AIEC.