Pessoal antes de postar procurei aqui e em alguns fóruns mas não consegui uma resposta ou um post satisfatório.
Não atuo na área sendo apenas um curioso em BD e gostaria da ajuda de todos para compreensão das seguintes dúvidas.
No sistema "gravação antecipada do log" segue as seguintes regras:
1- A atualização de uma transação em um banco de dados precisa ser gravado fisicamente no log antes que a atualização seja fisicamente gravada no BD.
A verificação das restrições são feitas antes de serem gravadas no log?
2- Todos os outros registros de log para determinada transação precisam ser gravados fisicamente no log antes que o registro de log do COMMIT dessa transação seja fisicamente gravado no log.
Os registros do log de uma transação é gravada como um todo em serial sem concorrência com outras transações?
Os registros de log de uma transação em andamento são gravados? Se sim o que ocorre quando abortada?
3- O processamento do COMMIT para determinada transação não deverá ser completado até que o registro de log do COMMIT para essa transação seja gravado fisicamente no log.
Para recuperação cria-se a lista refazer e desfazer baseado no checkpoint, onde refaz as transações confirmadas e desfaz as transações que estavam em andamento.
Desfazer as transações que estavam em andamento significa que as transação não confirmadas foram gravadas no BD?
Essas informações me basei no livro que comprei de curioso (Introdução a Sistemas de Banco de Dados).
Pergunta
marcolino_silva
Boa Tarde a todos,
Pessoal antes de postar procurei aqui e em alguns fóruns mas não consegui uma resposta ou um post satisfatório.
Não atuo na área sendo apenas um curioso em BD e gostaria da ajuda de todos para compreensão das seguintes dúvidas.
No sistema "gravação antecipada do log" segue as seguintes regras:
1- A atualização de uma transação em um banco de dados precisa ser gravado fisicamente no log antes que a atualização seja fisicamente gravada no BD.
A verificação das restrições são feitas antes de serem gravadas no log?
2- Todos os outros registros de log para determinada transação precisam ser gravados fisicamente no log antes que o registro de log do COMMIT dessa transação seja fisicamente gravado no log.
Os registros do log de uma transação é gravada como um todo em serial sem concorrência com outras transações?
Os registros de log de uma transação em andamento são gravados? Se sim o que ocorre quando abortada?
3- O processamento do COMMIT para determinada transação não deverá ser completado até que o registro de log do COMMIT para essa transação seja gravado fisicamente no log.
Para recuperação cria-se a lista refazer e desfazer baseado no checkpoint, onde refaz as transações confirmadas e desfaz as transações que estavam em andamento.
Desfazer as transações que estavam em andamento significa que as transação não confirmadas foram gravadas no BD?
Essas informações me basei no livro que comprei de curioso (Introdução a Sistemas de Banco de Dados).
Desde já agradeço a atenção e a ajuda de vocês.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.