Analise
Com relação a banco de dados, defina os conceitos das propriedades ACID de uma transação.
Transação
•Os SGBDs, em geral, são Multiusuários
–processam simultaneamente operações disparadas por vários usuários.
•Concorrentemente
–deseja-se alta disponibilidade e tempo de resposta pequeno
–execução intercalada de conjuntos de operações
•Operações são chamadas transações
•O uso concorrente é possível devido ao conceito de Multiprogramação;
[pic]
•Uma transação é uma unidade da execução de programa que acessa e possivelmente atualiza vários itens de dados.
Korth(2006)
•Normalmente a transação é iniciada por um programa do usuário escrito em uma DML ou em linguagem de programação de alto nível.
[pic]
•Uma transação precisa ver um banco de dados consistente.
•Durante a execução da transação, o banco de dados pode ser temporariamente inconsistente.
•Quando a transação é completada com sucesso (é confirmada), o banco de dados precisa ser consistente. •Após a confirmação da transação, as mudanças que ele faz no banco de dados persistem.
•Várias transações podem ser executadas em paralelo.
•Dois problemas principais para resolver:
•Falhas de vários tipos, como falhas de hardware e falhas de sistema
•Execução simultânea de múltiplas transações
[pic]
Uma amostra de transação (Pseudocódigo)
•Propriedades ACID
–Atomicidade. Ou todas as operações da transação são refletidas corretamente no banco de dados ou nenhuma delas é.
[pic]
•Propriedades ACID
–Consistência. A execução de uma transação isolada preserva a consistência do banco de dados.
[pic]