O SGBD manterá na cache do banco de dados (memória RAM) uma série de buffers de dados. Cada buffer costuma manter o conteúdo de um bloco de disco do banco de dados, que contém alguns dos itens de banco de dados que estão sendo processados. Quando esses buffers estão todos ocupados, e blocos de disco de banco de dados adicionais devem ser copiados para a memória, alguma política de substituição de buffer é utilizada para escolher quais buffers atuais devem ser substituídos.
Se um buffer escolhido tiver sido modificado, ele precisa ser gravado de volta no disco antes de ser reutilizado. Entretanto, a execução de um comando do tipo COMMIT força a gravação física dos dados no disco.
|
Os mecanismos de controle de concorrência e recuperação tratam principalmente dos comandos de banco de dados em uma transação. As transações submetidas pelos diversos usuários podem ser executadas simultaneamente, acessar e atualizar os mesmos itens de banco de dados. Se essa execução simultânea for descontrolada, ela pode ocasionar problemas, como um banco de dados inconsistente. |
Na próxima seção, apresentamos de maneira informal alguns dos problemas que podem ocorrer.