Transações Flashcards

1
Q

Defina as características de uma transação ACID

A
  • Atomicidade: uma transação é uma unidade de processamento, é realizada integralmente ou não é realizada.
  • Consistência: uma transação leva um banco de dados de um estado consistente para outro estado consistente.
  • Isolamento: uma transação deve parecer como se estivesse sendo executada isoladamente.
  • Durabilidade: as alterações aplicadas a um banco de dados por meio de uma transação confirmada (commited) devem persistir no banco de dados.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

O que é o Schedule de transações

A

Quando transações estão sendo executadas concorrentemente e de modo entrelaçado, a ordem de execução das operações das várias transações é conhecida como escalonamento (Schedule)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

O que é um schedule Seriável?

A

Dois escalonamentos são considerados seriais quando as operações de cada transação são executadas em série, consecutivamente, sem quaisquer operações entrelaçadas as outra transação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

O que é um Schedule Serial?

A

Um escalonamento é serial se, para todas as transações T participantes do escalonamento, todas as operações de T forem executadas consecutivamente no escalonamento; caso contrário, o escalonamento é dito não-serial

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

O que é uma Leitura Suja (DIRTY READ)?

A

Leitura de dados não confirmados de uma linha existente, podendo ocasionar a leitura de uma informação nunca confirmada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

O que é uma Leitura não repetida (NON REPEATABLE READ)?

A

Duas leituras de dados na mesma transação não se repetem. Na segunda leitura, dados não existem ou foram modificados.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

O que é leitura fantasma (PHANTOM READ)?

A

Na releitura de um conjunto de dados, surgem novas informações no conjunto.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que é a perda de atualização?

A

duas transações que ocorrem simultaneamente atualizam o mesmo dado. Isto pode ocorrer em uma seqüência segundo a qual uma das atualizações é perdida.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Quais são os níveis de isolamento de transação possíveis e quais problemas eles evitam?

A
  • READ UNCOMMITED: Perda de Atualização
  • READ COMMITED: Perda de Atualização e Leitura Suja.
  • REPEATABLE READ: Perda de Atualização, Leitura Suja e Leitura Não Repetida.
  • SERIALIZABLE: Perda de Atualização, Leitura Suja, Leitura Não Repetida e Leitura Fantasma.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Como funciona uma transação SERIALIZABLE?

A

Uma transação é totalmente isolada das outras. Caso a transação tenha comandos DML que tentem atualizar dados não gravados de outra transação, essa transação não será efetuada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Como funciona uma trasação REPEATABLE READ?

A

Os dados podem ser lidos mais de uma vez, e se outra transação tiver incluído ou atualizado linhas e estas forem gravadas no banco de dados entre uma e outra leitura dos dados, então os dados retornados da última busca serão diferentes dos dados da busca anterior. Esse efeito é conhecido como leitura fantasma.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Como funciona uma transação READ COMMITED?

A

Caso a transação utilize comando DML que precise do bloqueio de linhas que outras transações estão utilizando, a operação somente será concluída após a liberação da linha da outra transação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Como funciona uma tran sação READ UNCOMMITED?

A

Serão lidos conteúdos não gravados ainda pelo banco de dados (transações passíveis de ROLLBACK). Há um enorme risco nessas operações, visto que o usuário que está bloqueando a informação pode descartá-la. Esse efeito é conhecido como leitura suja.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Quais são as técnicas de controle de concorrência utilizadas pelo SGBD?

A
  • Utilização de Locks (Lock Pessimista).
  • Ordenamento de Registros de Timestamp (data/hora/minuto/segundo).
  • Validação (Lock Otimista).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Como funciona o bloqueio em duas fases (Two Phase Lock)?

A

Diz-se que uma transação segue o protocolo de bloqueio em duas fases se todas as operações de bloqueio (read_lock ou write_lock) precedem a primeira operação de desbloqueio na transação. Essa transação pode ser dividida em duas fases: uma fase de expansão ou crescimento, durante a qual podem-se obter novos bloqueios em itens mas nenhum pode ser liberado; e uma fase de encolhimento ou retração (segunda fase), durante a qual bloqueios existentes podem ser liberados, mas nenhum bloqueio pode ser obtido.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly