Transações
As operações que incluem um ou mais acessos ao banco de dados, seja para ler ou para escrever dados, são conhecidas como transações. Os SGBDs de bancos de dados relacionais devem garantir algumas propriedades das transações. Essas propriedades formam um acrônimo chamado ACID:
Atomicidade: O nome já diz tudo! Um átomo é indivisível, portanto a transação também deve ser. Uma transação faz diversas operações sobre o banco de dados, mas se, durante a execução, uma dessas operações falha, então o que já havia sido feito deve ser revertido. Os resultados parciais da transação não devem ser gravados no banco de dados. Isso é importante porque as transações são definidas pelo desenvolvedor para serem executadas do começo ao fim. O produto intermediário, quando somente alguns passos foram seguidos, não seria um resultado desejado e, portanto, não deve produzir efeitos no BD.
Consistência: As transações devem levar um BD de um estado consistente a outro estado consistente. Isso quer dizer que as alterações produzidas pelas transações não podem produzir efeitos que violem as restrições definidas para o BD. Imagine que foi definido que o CPF de cada pessoa é único em uma tabela. Dessa forma, em respeito à propriedade da consistência, nenhuma transação pode criar uma pessoa com o CPF igual ao de outra.
Isolamento: Em um banco de dados multiusuário, é comum que haja várias transações tentando acessar o mesmo registro ao mesmo tempo, seja para ler, seja para alterar. Como as transações requerem um tempo para ser processadas, mesmo nos casos onde esse intervalo é curto, existe a necessidade de se adotar um conjunto de técnicas para preservar o resultado desejado.
Durabilidade: Esta é muito simples! As alterações realizadas por uma transação devem persistir no banco de dados. Ou seja, uma vez que uma transação foi finalizada com sucesso, mesmo que posteriormente falte energia ou o BD sofra algum tipo de falha, os resultados devem permanecer gravados.
QUESTÃO CERTA: Nos sistemas de processamento de transações, a confiabilidade dos dados deve ser garantida. “Se todos os passos de uma transação não forem completados, a transação inteira será cancelada”. Isto refere-se à característica: atomicidade.
QUESTÃO ERRADA: Uma transação é uma sequência de ações divisíveis de uma unidade de trabalho.
Se você se lembrar das propriedades ACID, conjunto de características que devem ser seguidas pelas transações em bancos de dados relacionais comuns, vai ver que a afirmativa está incorreta. A primeira característica das transações é, a atomicidade, que define que as transações são indivisíveis, devendo ser executadas sempre por inteiro.
QUESTÃO CERTA: Um conjunto importante de propriedades das transações em um banco de dados recebe o acrônimo ACID. O significado de ACID é: atomicidade, consistência, isolamento e durabilidade.
QUESTÃO CERTA: Quais as 4 propriedades de que depende a integridade de uma transação de banco de dados? Atomicidade, consistência, isolamento e durabilidade.
QUESTÃO CERTA: Atomicidade é uma propriedade de transação de um SGBD relacional que garante que: todas as operações em um banco de dados, em uma transação, sejam executadas ou nenhuma delas o seja.
QUESTÃO CERTA: Sistemas de banco de dados estão sujeitos a falhas como falta de energia, erros de software ou mesmo sabotagem dos dados. O sistema de recuperação é responsável pela restauração do banco para um estado consistente que havia antes da ocorrência da falha. Para precaver-se de tais falhas, devem-se preservar as propriedades de: atomicidade e durabilidade.
QUESTÃO CERTA: A atomicidade é a propriedade que assegura que as atualizações relacionadas e dependentes ocorram dentro dos limites da transação ou nenhuma atualização será efetivada no banco de dados.
QUESTÃO ERRADA: Atomicidade é a propriedade que garante que as transações não sejam afetadas pelo funcionamento umas das outras nem tenham acesso aos resultados parciais entre si.
QUESTÃO ERRADA: Em uma transação, durabilidade é a propriedade que garante que os dados envolvidos durem por tempo necessário e suficiente até que sejam excluídos.
Os dados modificados devem estar disponíveis em DEFINITIVO, e não por tempo necessário e suficiente até que sejam excluídos;
QUESTÃO CERTA: A atomicidade garante que todos os efeitos da transação T sejam integralmente refletidos no banco de dados ou que, em caso de falha, nenhum deles seja aceito.
QUESTÃO CERTA: O isolamento garante que a execução da transação T seja isolada da execução de quaisquer outras transações simultâneas, de modo a evitar que o banco de dados venha a assumir um estado inconsistente.
QUESTÃO ERRADA: A durabilidade garante que as atualizações promovidas pela transação T no estado do banco de dados sejam sempre mantidas, mesmo que ocorra uma falha no sistema durante a sua execução.
FALSO – Os efeitos de uma transação em caso de sucesso (commit) são permanentes mesmo em presença de falhas.
QUESTÃO ERRADA: A propriedade de durabilidade certifica que nenhuma transação interfira nas atividades ou nas atualizações efetuadas por outra transação.
ERRADA. Refere-se a propriedade de isolamento.