Custos indiretos de registro
O gerenciador de banco de dados mantém arquivos de log que registram todas as alterações do banco Há duas estratégias de registro: registro circular e registro de arquivo.
- Com logging circular, os arquivos de log são reutilizados (iniciando com o arquivo de log inicial) quando os arquivos disponíveis preencheram. Os registros de log substituídos não são recuperáveis.
- Com logging logging, os arquivos de log são arquivados quando preenchem os registros de log. A retenção de log possibilita a recuperação de rollforward, na qual as mudanças no banco de dados (unidades concluídas de trabalho ou transações) que são registradas nos arquivos de log podem ser reaplicadas durante a recuperação de desastres.
- No COMMIT
- Até que as páginas de dados correspondentes sejam gravadas em disco, pois o servidor Db2® usa registro de gravação antecipada, no qual nem todos os dados alterados e páginas de índice precisam ser gravados em disco quando uma transação for concluída com uma instrução COMMIT
- Até que as mudanças (principalmente resultantes da execução de instruções de linguagem de definição de dados) sejam feitas aos metadados
- Quando o buffer de log estiver cheio
Db2 gerencia a gravação de dados de registro em disco, incluindo o início de E/S e a quantidade de dados, a fim de minimizar o tempo total de processamento da instrução SQL.
Alterações em objetos de grande porte (LOBs) e VARCHARs LONG são rastreadas através de paginação de sombra. As alterações da coluna LOB não são registradas, a menos que você especifique reter log e a coluna LOB foi definida sem a cláusula NOT LOGIN na instrução CREATE TABLE. As mudanças nas páginas de alocação para tipos de dados LONG ou LOB são registradas como páginas de dados regulares. Os valores de LOB inline participam totalmente em atualização, inserção ou exclusão de registro, pois apesar de serem valores VARCHAR.