Gerenciamento de Transações em Banco de Dados

Tamanho: px
Começar a partir da página:

Download "Gerenciamento de Transações em Banco de Dados"

Transcrição

1 Gerenciamento de Transações em Banco de Dados Daniela Barreiro Claro MAT A60 Aula 13

2 Introdução à Transação 2 Transação É uma coleção de operações que formam uma única unidade lógica As transações acessam dados através de duas operações READ(Q): transfere um item de dados Q para um buffer local WRITE(Q): transfere um item de dados Q do buffer local para ser persistido no Banco de Dados Q

3 Propriedades ACID 3 Garantir a integridade dos dados ATOMICIDADE Todas ou nenhuma operação é refletida no BD CONSISTÊNCIA A execução de T isolada preserva a consistência ISOLAMENTO Embora várias Ts estão executando simultaneamente, cada transação não interfere nas outras DURABILIDADE Uma vez que T executou com sucesso, as suas atualizações no BD são persistidas. Q

4 Propriedades ACID (na prática) Sem consistência T i : read(a); A:=A-50; write(a); read(b); B:=B+50; write(b); A B Se o BD tiver consistente Sem antes consistência da transação, o dinheiro pode ele deve continuar ter sido destruído consistente depois. pela transação Simplesmente A transação não desaparecido. pode destruir um dinheiro

5 Propriedades ACID (na prática) 5 Sem atomicidade T i : read(a); A:=A-50; write(a); read(b); B:=B+50; write(b); A X X X B A atomicidade garante que ou toda a transação é completada com sucesso ou nenhuma operação de uma transação é refletida no Sem Banco atomicidade, de X Dados. se ocorre uma falha depois do Assim, X este estado write(a) o BD inconsistente X nunca ficaria se em um reproduzirá. estado inconsistente.

6 Propriedades ACID (na prática) 6 Sem durabilidade T i : read(a); A:=A-50; write(a); read(b); B:=B+50; write(b); A B Sem A durabilidade durabilidade, garante se que todas as ocorre atualizações uma falha realizadas no mesmo BD continuem depois de persistidas mesmo persistir na no presença 2000de banco uma falha de dados, no BD. os dados são 2050 perdidos. Garante a persistência dos dados. Banco de Dados 2050??

7 Propriedades ACID (na prática) Sem isolamento 7 T i : read(a); A:=A-50; write(a); read(b); B:=B+50; write(b); A B T k : read(a); A= 950 O isolamento garante que mesmo transações read(b); que B= 2000 executam simultaneamente não interfiram em outras transações que estão em execução. Sem isolamento, transações que O isolamento funciona estão executando como túneis simultaneamente para a execução das operações. podem obter ler valores inconsistentes.

8 Modelo abstrato de uma transação PARCIALMENTE CONFIRMADA CONFIRMADA ATIVA FALHA ABORTADA 8

9 Planos de Execução (schedules) Representam a ordem cronológica em que as instruções são executadas Devem preservar a ordem em que as instruções aparecem em cada transação individual O schedule S de n transações T 1, T 2,...T n As operações em S devem ocorrer na mesma ordem que em T i 9

10 Planos de Execução (Schedules) O S.O. pode intercalar a execução das transações Exemplo de um plano de execução S: r 1 (A), r 2 (A), w 1 (A),r 1 (B),w 2 (A),w 1 (B) 10 Duas transações em S estão em conflito se: pertencem a diferentes transações acessam o mesmo item de dados pelo menos uma das operações ser um write(a)

11 Planos de Execução (schedules) 11 Planos seriais, não-seriais Planos não-seriais (intercalados) podem resultar em resultados errados Intercalação read(a); A:=A-50; read(a); temp:=a*0,1; A:=A-temp; write(a); write(a); read(b); read(b); B:=B+temp; write(b); B:=B+50; write(b); Resultados Q

12 Planos de Execução (schedules) Um plano S com n transações é serializável se ele for equivalente a um plano serial. Um plano não-serial é serializável é o mesmo que dizer que ele é correto 12

13 Controle de Concorrência Existem outros mecanismos para controlar a concorrência independente de como o S.O. compartilha os recursos Bloqueio, timestamp, gráfico, validação,etc Objetivo do controle de concorrência Alto grau de concorrência enquanto garante que todos os schedules sejam serializáveis. 13

14 Controle de Concorrência 14 Bons motivos Melhor throughput e utilização dos recursos Paralelismos nas operações de E/S e CPU. Tempo de espera reduzido T podem ser curtas e longas Diversas técnicas são usadas para assegurar ISOLAMENTO Modo de garantir a serialização Itens de dados acessados de uma maneira mutuamente exclusivas Método mais comum: BLOQUEIO

15 Controle de Concorrência: bloqueios Dois principais modos que um item pode ser bloqueado Compartilhado: T i pode ler e não escrever em Q Exclusivo: T i pode ler e escrever em Q A transação solicita ao gerenciador de transações um bloqueio no modo X Transação só prossegue depois que o bloqueio for concedido 15

16 Controle de Concorrência: Bloqueios Compatibilidade de Bloqueios Se T i tem um bloqueio no modo A sobre o item Q e T j (T j T i ) solicita um bloqueio do tipo B e o bloqueio for concedido imediatamente, diz-se que o modo A é compatível com o modo B. S X S true false X false false Bloqueio compartilhado: LOCK-S (Q) Bloqueio exclusivo: LOCK-X(Q) 16 Q

17 Controle de Concorrência: Bloqueios 17 Vamos supor o desbloqueio no final das transações T 1 :lock-x(b); read(b); B:=B-50; write(b); unlock(b); lock-x(a) read(a); A:=A+50; write(a); unlock(a); T 2 :lock-s(a); read(a); unlock(a); lock-s(b); read(b); unlock(b); display(a+b); T 1 :lock-x(b); read(b); B:=B-50; write(b); lock-x(b) read(a); A:=A+50; write(a); unlock(b); unlock(a); T 2 :lock-s(a); read(a); lock-s(b); read(b); display(a+b); unlock(a); unlock(b); Q

18 Bloqueios Bloqueios não garantem a serialização e nem a prevenção de deadlock. Deve-se ter um protocolo adicional relacionado ao posicionamento das operações de bloqueio e desbloqueio O mais conhecido é o 2PC Two Phase Commit Protocolo de Bloqueio em duas fases 18

19 2PC 19 T emite solicitações de bloqueio e desbloqueio em duas fases Fase de Crescimento Obtém bloqueios mas não pode liberar bloqueios Fase de encolhimento Libera bloqueios mas não pode obter novos bloqueios 2PC estrito Todos os bloqueios de modo exclusivo sejam mantidos até que esta transação seja confirmada Nenhuma outra transação pode ler ou escrever em um item Q que seja escrito por T, a menos que T tenha efetivado. Também não é deadlock-free Q

20 2PC e suas variantes 2PC rigoroso Exige que todos os bloqueios sejam mantidos (tanto exclusivo qto compartilhado) até que a transação seja confirmada. A maioria dos SGBD comerciais implementam ou o estrito ou o rigoroso. Outras técnicas que não usam bloqueios, mas são deadlock-free 20

21 Protocolo baseado em Timestamp 21 Timestamp Identificador único criado pelo SGBD Podem ser um contador ou data/hora Cada item de dados Q é associado 2 valores W-Timestamp(Q):maior timestamp que tenha executado um write(q) com sucesso Transação mais nova R-Timestamp(Q): maior timestamp que tenha executado um read(q) Transação mais nova. Estes timestamps são executados sempre que um read(q) ou write(q) é executada.

22 Protocolo baseado em Timestamp Funcionamento T i emitiu um READ(Q) 22 Se TS(T i ) < W-Timestamp(Q) então T i precisa ler um valor de Q que ja foi modificado por outro. Alguma T j + nova ja teria escrito o valor no item Q antes que T i tivesse a chance de ter lido Q. Logo, READ(Q) é rejeitada e T i é revertida Se TS(T i )>W-Timestamp(Q) então READ(Q) é executada R-timestamp(Q) é definido como TS(T i )

23 Protocolo baseado em Timestamp 23 Funcionamento T i emitiu um WRITE(Q) Se TS(T i ) < R-Timestamp(Q) então Alguma Tj + nova já leu o valor do item Q antes que T i tivesse a chance para escrever Q. Logo, WRITE(Q) é rejeitada e T i é revertida Se TS(T i ) < W-Timestamp(Q) então WRITE(Q) é rejeitada e T i é revertida Alguma Tj + nova já escreveu o valor do item Q antes que T i tivesse a chance para escrever Q Caso contrario, WRITE(Q) é executada W-timestamp(Q) é definido como TS(T i )

24 Protocolo baseado em Timestamp 24 Se T i for revertida, o sistema atribui um novo timestamp e reinicia. Este protocolo garante serialização e deadlock-free Mas não garante a estagnação (starvation) Uma sequência de transações curtas causa o reinício repetido da transação longa. Pode-se evitar a estagnação garantindo que Não haja outra T mantendo um bloqueio sobre Q em um modo que entra em conflito Não existe outra T que esteja esperando um bloqueio sobre Q e que fez a solicitação de bloqueio antes de Ti

25 Outros Protocolos Baseado em Gráfico Baseado em Validação (ou Otimista) Granularidade Múltipla Baseada em bloqueios explícitos e implícitos Modo de intenção compartilhado Modo de intenção exclusivo 25

26 Pratica Cria uma tabela 26

27 Pratica Modo AutoCommit do MySQL Opera no autocommit por default Cada consulta em uma transação separada 27

28 Pratica Executando uma transação 28

PCS3413. Engenharia de So-ware e Banco de Dados. Aula 21. Escola Politécnica da Universidade de São Paulo

PCS3413. Engenharia de So-ware e Banco de Dados. Aula 21. Escola Politécnica da Universidade de São Paulo PCS3413 Engenharia de So-ware e Banco de Dados Aula 21 Escola Politécnica da Universidade de São Paulo 1 TRANSAÇÃO E CONTROLE DE CONCORRÊNCIA Transação unidade de execução de programa que acessa e, possivelmente,

Leia mais

Avisos. Processamento de Transações Controle de Concorrência. Roteiro da aula. Tipos de bloqueio: Binários. Protocolos baseados em bloqueio

Avisos. Processamento de Transações Controle de Concorrência. Roteiro da aula. Tipos de bloqueio: Binários. Protocolos baseados em bloqueio Ciência da Computação GBC043 Sistemas de Banco de Dados Processamento de Transações Controle de Concorrência Avisos Lista de exercícios adicionais na página da disciplina Profa. Maria Camila Nardini Barioni

Leia mais

Módulo II: Controle de. Concorrência. (Aulas 1 e 7) Clodis Boscarioli

Módulo II: Controle de. Concorrência. (Aulas 1 e 7) Clodis Boscarioli Módulo II: Controle de Concorrência (Aulas 1 e 7) Clodis Boscarioli Agenda: Introdução a Controle de Concorrência; Protocolos baseados em Bloqueio; Protocolos baseados em Timestamp; Protocolos baseados

Leia mais

Roteiro. Noções de Controle de Concorrência. BCC321 - Banco de Dados I. Ementa. Finalidade do Controle de Concorrência.

Roteiro. Noções de Controle de Concorrência. BCC321 - Banco de Dados I. Ementa. Finalidade do Controle de Concorrência. Roteiro Noções de Controle de Concorrência Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Posicionamento

Leia mais

Banco de Dados I 6 Transações e Controle de Concorrência

Banco de Dados I 6 Transações e Controle de Concorrência Banco de Dados I 6 Transações e Controle de Concorrência Grinaldo Lopes de Oliveira (grinaldo( grinaldo@gmail.com) Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas * Material com créditos

Leia mais

Sistemas Distribuídos Transações

Sistemas Distribuídos Transações Sistemas Distribuídos Transações Vinícius Fernandes Soares Mota 1 2 Transações Transação: Unidade lógica de trabalho abrange um conjunto de operações de manipulação de dados que executam uma única tarefa

Leia mais

Transacções concorrentes exemplo. B := B 50 write(b) read(a) A := A + 50 write(a)

Transacções concorrentes exemplo. B := B 50 write(b) read(a) A := A + 50 write(a) Bases de Dados Concorrência Transacções concorrentes exemplo T 1 : B := B 50 write(b) A := A + 50 write(a) T 2 : display(a+b) T 2 pode dar um resultado inconsistente quando executada em paralelo com T

Leia mais

se a transação falhar entre os 3 passos 4 6, os passos 1 3 ficam sem efeito 4 read(b) Consistência

se a transação falhar entre os 3 passos 4 6, os passos 1 3 ficam sem efeito 4 read(b) Consistência Bases de Dados Transacções Propriedades ACID 1 T Atomicidade i : read(a) 2 A := A 50 se a transação falhar entre os 3 write(a) passos 4 6, os passos 1 3 ficam sem efeito 4 read(b) Consistência 5 B := B

Leia mais

BD II (SI 587) Transações em Banco de Dados. Prof. Josenildo Silva

BD II (SI 587) Transações em Banco de Dados. Prof. Josenildo Silva BD II (SI 587) Transações em Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Nota Estes slides são adaptados de Database System Concepts, 6th Ed. Silberschatz, Korth and Sudarshan distribuídos

Leia mais

Controle de Concorrência

Controle de Concorrência Banco de Dados Fernando Fonseca Ana Carolina Definição Concorrência é a propriedade de uma transação poder ser executada em paralelo com outras transações Justificativa de uso Com a execução de várias

Leia mais

se a transacção falhar entre os passos 4 6, os passos 1 3 ficam sem efeito

se a transacção falhar entre os passos 4 6, os passos 1 3 ficam sem efeito Bases de Dados Transacções Propriedades ACID Atomicidade se a transacção falhar entre os passos 4 6, os passos 1 3 ficam sem efeito Consistência a soma A+B tem de ser igual antes e depois Isolamento nenhuma

Leia mais

BD II (SI 587) Controle de Concorrência. Josenildo Silva.

BD II (SI 587) Controle de Concorrência. Josenildo Silva. BD II (SI 587) Controle de Concorrência Josenildo Silva jcsilva@ifma.edu.br Nota Estes slides são baseados nos slides disponibilizados pelos autores ELMASRI e NAVATHE, para o livro Sistemas de Banco de

Leia mais

Introdução. Processamento de Transações. Introdução. Introdução. Transações. Transações

Introdução. Processamento de Transações. Introdução. Introdução. Transações. Transações Ciência da Computação GBC043 Sistemas de Banco de Dados Processamento de Transações Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 Introdução... SGBDs são em geral multi-usuários

Leia mais

Sumário. Introdução a Transações

Sumário. Introdução a Transações Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Introdução. Processamento de Transações. Introdução. Introdução. Transações. Transações. Transação

Introdução. Processamento de Transações. Introdução. Introdução. Transações. Transações. Transação Pós-graduação em Ciência da Computação CCM-202 Sistemas de Banco de Dados Processamento de Transações Profa. Maria Camila Nardini Barioni camila.barioni@ufabc.edu.br Bloco B - sala 937 Introdução... SGBDs

Leia mais

Bases de Dados 2013/2014 Transações. Helena Galhardas. Sumário!

Bases de Dados 2013/2014 Transações. Helena Galhardas. Sumário! Bases de Dados 2013/2014 Transações Helena Galhardas Sumário! Conceito de Transação! Propriedades ACID! Conflitos e Serializabilidade! Recuperabilidade! Protocolos de controlo de concorrência! Transações

Leia mais

ANÁLISE E PROJETO DE BANCO DE DADOS

ANÁLISE E PROJETO DE BANCO DE DADOS ANÁLISE E PROJETO DE BANCO DE DADOS PROCESSAMENTO DE TRANSAÇÕES FELIPE G. TORRES INTRODUÇÃO AO PROCESSAMENTO DE TRANSAÇÕES Transação pode ser conceituada como unidades lógicas de processamento de banco

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Transações. Alberto Sardinha

Sistemas de Informação e Bases de Dados 2012/2013. Transações. Alberto Sardinha Sistemas de Informação e Bases de Dados 2012/2013 Transações Alberto Sardinha Sumário! Conceito de Transação! Propriedades ACID! Transações em SQL! Referências Raghu Ramakrishnan, Database Management Systems,

Leia mais

Aula 03. Evandro Deliberal

Aula 03. Evandro Deliberal Aula 03 Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal Concorrência Método Sincronização Problemas: Perda de consistência Acesso a dados inconsistentes Perda de atualizações

Leia mais

Banco de Dados I. Aula 18 - Prof. Bruno Moreno 22/11/2011

Banco de Dados I. Aula 18 - Prof. Bruno Moreno 22/11/2011 Banco de Dados I Aula 18 - Prof. Bruno Moreno 22/11/2011 Plano de Aula Introdução SPT Sistemas monousuários e multiusuários Sistemas multiprogramados Transação - Definição Concorrência de Transações Log

Leia mais

Processamento de Transações. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Processamento de Transações. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Processamento de Transações Laboratório de Bases de Dados Introdução Ambiente multiusuário vários usuários utilizam o mesmo sistema ao mesmo tempo múltiplos programas (transações) compartilham a mesma

Leia mais

revisão Controle de Concorrência com Locks Bancos de Dados I 2015/02

revisão Controle de Concorrência com Locks Bancos de Dados I 2015/02 Bancos de Dados I 2015/02 revisão Controle de Concorrência com Locks Transações em SQL Prof. Altigran Soares da Silva Atomico=transaction manager Consistencia=controle concorrencia/commit Isolamento=controle

Leia mais

Revisão e Introdução 23/05/12. Controle Distribuído da Concorrência. Revisão de Conceitos. Revisão de Conceitos. Transação Operação

Revisão e Introdução 23/05/12. Controle Distribuído da Concorrência. Revisão de Conceitos. Revisão de Conceitos. Transação Operação Controle Distribuído da Concorrência Controle Distribuído da Concorrência REVISÃO E INTRODUÇÃO SERIALIZABILIDADE ALGORITMOS LOCKING-BASED Aluno: Walter Travassos Sarinho wts@cin.ufpe.br ALGORITMOS TIMESTAMP-BASED

Leia mais

Processamento de Transações

Processamento de Transações Arquitetura de Banco de Dados Processamento de Transações Carolina Nogueira Marcelo Eduardo Cardoso Rodrigo Dlugokenski Vítor De Araújo Bancos de dados Single-users versus Multiusers classificação baseada

Leia mais

Técnicas de Controle de Concorrência. Laboratório de Bancos de Dados

Técnicas de Controle de Concorrência. Laboratório de Bancos de Dados Técnicas de Controle de Concorrência Laboratório de Bancos de Dados João Eduardo Ferreira e José Alcazar Elmasri,, R.; Navathe,, S. B. Sistemas de Banco de Dados, 4ed. Pearson Addison Wesley,, 2005 (Caps.(

Leia mais

Processamento de Transações. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Processamento de Transações. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Processamento de Transações Banco de Dados Introdução Ambiente multiusuário vários usuários utilizam o mesmo sistema ao mesmo tempo múltiplos programas (transações) compartilham a mesma CPU Forma de execução

Leia mais

TRANSAÇÕES E CONTROLE DE CONCORRÊNCIA Em resumo: Transações: clientes podem necessitar que um servidor execute uma sequência de requisições de forma a

TRANSAÇÕES E CONTROLE DE CONCORRÊNCIA Em resumo: Transações: clientes podem necessitar que um servidor execute uma sequência de requisições de forma a Transações Transações Uma transação é um conjunto de operações que deve ser executado de forma atômica Atômica : se um erro ocorre no meio da transação, devemos voltar ao estado consistente anterior. Atômica

Leia mais

Processamento de Transações

Processamento de Transações Processamento de Transações Processamento de Transações Transações Atômicas: Unidades lógicas de processamento sobre um banco de dados. Controle de Concorrência: Garantia de que múltiplas transações ativadas

Leia mais

Processamento de Transações

Processamento de Transações Processamento de Transações Processamento de Transações ) Transações Atômicas: Unidades lógicas de processamento sobre um banco de dados. ) Controle de Concorrência: Garantia de que múltiplas transações

Leia mais

e c d o o r B s s n i : l e F s

e c d o o r B s s n i : l e F s e d o t n e m a s s e c o r P I I D B s e õ ç a s n a Tr Leite pe i l e F s i Lu : r o s s e Prof Contato luisleite@recife.ifpe.edu.br Professorluisleite.wordpress.com Ciclo de três aulas Processamento

Leia mais

Contato. professorluisleite.wordpress.com

Contato. professorluisleite.wordpress.com BD II Controle de Concorrência Professor: Luis Felipe Leite Contato luisleite@recife.ifpe.edu.br professorluisleite.wordpress.com Ciclo de três aulas Processamento de transações. Controle de Concorrência.

Leia mais

Banco de Dados. Controle de Concorrência e Recuperação de Transação. Prof. João Eduardo Ferreira Prof. Osvaldo Kotaro Takai

Banco de Dados. Controle de Concorrência e Recuperação de Transação. Prof. João Eduardo Ferreira Prof. Osvaldo Kotaro Takai Banco de Dados Controle de Concorrência e Recuperação de Transação Última atualização: 20 de janeiro de 2006 Prof. João Eduardo Ferreira Prof. Osvaldo Kotaro Takai Tópicos Modelo Transacional Clássico

Leia mais

Bases de Dados 2013/2014 Controlo de Concorrência

Bases de Dados 2013/2014 Controlo de Concorrência Bases de Dados 2013/2014 Controlo de Concorrência Helena Galhardas Sumário Serialização e Protocolos de Locking! 2PL Two Phase Locking! Tratamento de Deadlocks! Níveis de Isolamento em SQL! Aquisição Automática

Leia mais

Concorrência. Prof. Márcio Bueno. Material do Prof. Paulo Pires

Concorrência. Prof. Márcio Bueno. Material do Prof. Paulo Pires Concorrência Prof. Márcio Bueno {bd2tarde,bd2noite}@marciobueno.com Material do Prof. Paulo Pires Controle de Concorrência SGBD sistema multiusuário em geral diversas transações executando simultaneamente

Leia mais

PROCESSAMENTO DE TRANSAÇÕES

PROCESSAMENTO DE TRANSAÇÕES UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ CIÊNCIA DA COMPUTAÇÃO PROCESSAMENTO DE TRANSAÇÕES Profº Erinaldo Sanches Nascimento Objetivos Discutir a necessidade de controle de concorrência e

Leia mais

Técnicas de Recuperação em Banco de Dados

Técnicas de Recuperação em Banco de Dados Técnicas de Recuperação em Banco de Dados Daniela Barreiro Claro MAT A60 Aula 14 Recuperação em Banco de Dados 2 Falhas podem ocorrer em qualquer Sistema Catastroficas e não-catastroficas SGBD deve garantir

Leia mais

Controle de Concorrência

Controle de Concorrência Controle de Concorrência Protocolos de Bloqueio Protocolo com base em Timestamps Protocolos Multi-versão Inserção e Remoção de Dados Controle de Concorrência Controle de concorrência é usado para garantir

Leia mais

Sumário. Controle de Concorrência

Sumário. Controle de Concorrência Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Processamento de Transações II

Processamento de Transações II UNIVERSIDADE FEDERAL DO MARANHÃO - UFMA Banco de Dados II Processamento de Transações II Carlos Eduardo Portela Serra de Castro * Processamento de Transações II Sumário Definindo Plano de Execução Baseado

Leia mais

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba Tecnólogo em Análise e Desenvolvimento de Sistemas 1 0 Semestre de 2013 BD I Prof. Lineu Mialaret Aula 25:

Leia mais

Orientações. Transações - PostgreSQL. Relembrando: Propriedades desejáveis. Abrir Prompt de comando ROLLBACK

Orientações. Transações - PostgreSQL. Relembrando: Propriedades desejáveis. Abrir Prompt de comando ROLLBACK Ciência da Computação GBC043 Sistemas de Banco de Dados Orientações Transações - PostgreSQL Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 Executar os comandos conforme

Leia mais

Controle de Transação

Controle de Transação Curso: Ciência da Computação Disciplina: Banco de Dados Campus Lages Controle de Transação Prof. Edjandir C. Costa edjandir.costa@ifsc.edu.br Agenda Conceitos de transação e sistema Propriedades desejáveis

Leia mais

Gerência de Transações Distribuídas

Gerência de Transações Distribuídas Transação Gerência de Transações Distribuídas Uma é uma unidade de computação consistente e confiável Transparência de concorrência Transparência de falhas Fernanda Baião baiao@cos.ufrj.br Banco de dados

Leia mais

TRANSAÇÕES MAPAS MENTAIS

TRANSAÇÕES MAPAS MENTAIS TRANSAÇÕES MAPAS MENTAIS RESUMINDO TRANSAÇÕES: ESTADOS E OPERAÇÕES CONTROLE DE CONCORRÊNCIA Porque o controle de concorrência é necessário? Evitar problemas: Atualização perdida Atualização temporária

Leia mais

Técnicas de Controle de Concorrência

Técnicas de Controle de Concorrência Técnicas de Controle de Concorrência Principais Técnicas bloqueio (locking) timestamp Técnicas Baseadas em Bloqueio Técnicas mais utilizadas pelos SGBDs Princípio de funcionamento controle de operações

Leia mais

Sistemas de Gerência de Bancos de Dados

Sistemas de Gerência de Bancos de Dados Sistemas de Gerência de Bancos de Dados 4 - Consultas e Transações 4.4 - Gerência de Transações 1 Conceito de Transação Transação: seqüência de ações elementares que deverão ser executadas como se fossem

Leia mais

TRANSAÇÕES: SISTEMA DE RECUPERAÇÃO E CONTROLE DE CONCORRÊNCIA

TRANSAÇÕES: SISTEMA DE RECUPERAÇÃO E CONTROLE DE CONCORRÊNCIA UNIDADEB Teoria de Banco de Dados Unidade B TRANSAÇÕES: SISTEMA DE RECUPERAÇÃO E CONTROLE DE CONCORRÊNCIA Transações Quando estudamos os bancos de dados, utilizamos vários recursos sem entender como eles

Leia mais

Controle de Transações. Banco de Dados André Luiz do Vale Soares

Controle de Transações. Banco de Dados André Luiz do Vale Soares Controle de Transações Banco de Dados André Luiz do Vale Soares 1 Transações de Banco de Dados O que são transações em BDs? São um conjunto de instruções SQL, tratadas como uma UNIDADE, ou seja, todas

Leia mais

Técnicas de Controle de Concorrência

Técnicas de Controle de Concorrência Técnicas de Controle de Concorrência Pessimistas supõem que sempre ocorre interferência entre transações e garantem a serializabilidade enquanto a transação está ativa técnicas bloqueio (locking) timestamp

Leia mais

Sistemas de Gerência de Bancos de Dados

Sistemas de Gerência de Bancos de Dados Sistemas de Gerência de Bancos de Dados 5 - Controle de Concorrência 5.2 - Métodos baseados em Bloqueio 1 Protocolo simples de bloqueio: Definição: transação bloqueia objeto, na modalidade correta, antes

Leia mais

23/05/12. Conteúdo. Introdução ao gerenciamento de transações. Motivação. Motivação. Motivação. Motivação

23/05/12. Conteúdo. Introdução ao gerenciamento de transações. Motivação. Motivação. Motivação. Motivação Conteúdo Introdução ao gerenciamento de transações Aluno: Danusa Ribeiro drbc@cin.ufpe.br Professoras: Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias Lóscio - bfl@cin.ufpe.br Centro de Informática

Leia mais

Processamento de INDUSTRIA 4.0. Big Data. Aula #8 - Transações e concorrência MARMELADA NO RING, FONTE: ESTADAO EDUARDO CUNHA DE ALMEIDA

Processamento de INDUSTRIA 4.0. Big Data. Aula #8 - Transações e concorrência MARMELADA NO RING, FONTE: ESTADAO EDUARDO CUNHA DE ALMEIDA INDUSTRIA 4.0 Processamento de Big Data MARMELADA NO RING, FONTE: ESTADAO Aula #8 - Transações e concorrência EDUARDO CUNHA DE ALMEIDA Agenda - Transações - Atomicidade - Consistência - Isolamento - Durabilidade

Leia mais

Sumário. Recuperação de Falhas

Sumário. Recuperação de Falhas Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

BDII SQL TRANSAÇÃO Revisão 2

BDII SQL TRANSAÇÃO Revisão 2 exatasfepi.com.br BDII SQL TRANSAÇÃO Revisão 2 André Luís Duarte Honra a teu pai e a tua mãe (que é o primeiro mandamento com promessa), para que te vá bem, e sejas de longa vida sobre a terra.(ef 6:2,3)

Leia mais

BANCO DE DADOS 2 TRANSAÇÃO

BANCO DE DADOS 2 TRANSAÇÃO BANCO DE DADOS 2 TRANSAÇÃO Prof. Edson Thizon Reconstrução ( recovery ) Idéia básica Em algum momento no tempo, todo sistema computacional apresentará uma falha. O SGBD deve incorporar mecanismos de proteção

Leia mais

6.1 Resumo das Características do Modelo Proposto

6.1 Resumo das Características do Modelo Proposto 6 Comparação entre s de Execução de Transação em Ambiente de Computação Móvel Este capítulo tem por objetivo apresentar um estudo comparativo entre os mais significativos modelos de execução de transação

Leia mais

Banco de dados. Prof. Emiliano S. Monteiro

Banco de dados. Prof. Emiliano S. Monteiro Banco de dados Prof. Emiliano S. Monteiro Processamento de transações Sistema monousuário x multiusuário Um SGBD é monousuário se no máximo um usuário puder utilizá-lo de cada vez. Um SGBD é multiusuário

Leia mais

DDL). O resultado da compilação dos parâmetros DDLs é

DDL). O resultado da compilação dos parâmetros DDLs é Banco Dados Aula 2 Linguagens de Banco de Dados e Tipos de Usuários 1. Linguagens de Banco de Dados Um sistema de banco de dados proporciona dois tipos de linguagens: uma específica para os esquemas do

Leia mais

Sincronização e Concorrência

Sincronização e Concorrência Tópicos da Aula Sincronização e Concorrência Sincronização sincronização interna sincronização externa sincronização de relógio métodos de sincronização Cristian Berkeley tempo lógico Controle de Concorrência

Leia mais

Sistemas de Gestão de Bases de Dados e-fólio B. Resolução e Critérios de Correção

Sistemas de Gestão de Bases de Dados e-fólio B. Resolução e Critérios de Correção 21103 - Sistemas de Gestão de Bases de Dados 2015-2016 e-fólio B Resolução e Critérios de Correção PARA A RESOLUÇÃO DO E-FÓLIO, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE: 1) O e-fólio é constituído

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Transação e Controle de Concorrência Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Transações atômicas Conteúdo O modelo transacional Armazenamento estável Primitivas transacionais Propriedades das transações Transações aninhadas Implementação Área de trabalho privada

Leia mais

erro lógico: a transacção não pode completar devido a condição de erro erro de sistema: o sistema entrou num estado que impede a transacção

erro lógico: a transacção não pode completar devido a condição de erro erro de sistema: o sistema entrou num estado que impede a transacção Bases de Dados Recuperação Classificação de falhas Falha de transacção erro lógico: a transacção não pode completar devido a condição de erro erro de sistema: o sistema entrou num estado que impede a transacção

Leia mais

Sistemas Distribuídos Aula 20

Sistemas Distribuídos Aula 20 Sistemas Distribuídos Aula 20 Aula passada Redes sem fio Coordenando acesso ao meio Eleição de líder Aula de hoje Sistema transacional ACID Exemplos 2-Phase Locking Sistema Transacional Considere sistema

Leia mais

de Bases de Dados Exame 1

de Bases de Dados Exame 1 Ano lectivo 009/0 o semestre Administração e Optimização de Bases de Dados Exame Regras O exame tem a duração de horas. O exame é individual e com consulta Só poderá abandonar a sala ao fim de hora, mediante

Leia mais

Transações, Controle de Concorrência e o Hibernate. Clodis Boscarioli

Transações, Controle de Concorrência e o Hibernate. Clodis Boscarioli Transações, Controle de Concorrência e o Hibernate Clodis Boscarioli Transações Um conjunto de várias operação em um BD pode ser visto pelo usuário como uma única unidade. Exemplo: A transferência de fundos

Leia mais

BD II (SI 587) Técnicas de Recuperação. Josenildo Silva.

BD II (SI 587) Técnicas de Recuperação. Josenildo Silva. BD II (SI 587) Técnicas de Recuperação Josenildo Silva jcsilva@ifma.edu.br Nota Estes slides são baseados nos slides disponibilizados pelos autores ELMASRI e NAVATHE, para o livro Sistemas de Banco de

Leia mais

Criando Transações. Prof. Fernanda Baião. TbEstoqueLivros. TbEstoqueLivros. ID IDLoja IDLivro Estoque

Criando Transações. Prof. Fernanda Baião. TbEstoqueLivros. TbEstoqueLivros. ID IDLoja IDLivro Estoque Criando Transações Prof. Fernanda Baião fernanda.baiao@uniriotec.com.br SQL Tabelas Exemplo TbAutor TbAutor TbEditora CNPJ TbEditora CNPJ TbLivro ISBN Autor Editora TbLivro ISBN Autor Editora TbLoja CNPJ

Leia mais

Sistemas de Gerência de Bancos de Dados. 5 - Controle de Concorrência Tópicos Adicionais

Sistemas de Gerência de Bancos de Dados. 5 - Controle de Concorrência Tópicos Adicionais Sistemas de Gerência de Bancos de Dados 5 - Controle de Concorrência 5.4 - Tópicos Adicionais 1 Problema dos "Fantasmas" "Hot Spots" Bloqueio em Árvores-B+ Tópicos 2 Problema dos "Fantasmas" Ações elementares

Leia mais

Sistemas de Bases de Dados 2.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas

Sistemas de Bases de Dados 2.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas DI-FCT/UNL 6 de junho de 2018 Sistemas de Bases de Dados 2.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas Nome: Grupo 1 (7 valores) 1 a) Quais são as 4 propriedades ACID que

Leia mais

INTRODUÇÃO AO PROJETO DE BANCO DE DADOS ORIENTADO A OBJETOS

INTRODUÇÃO AO PROJETO DE BANCO DE DADOS ORIENTADO A OBJETOS UNIDADEA INTRODUÇÃO AO PROJETO DE BANCO DE DADOS ORIENTADO A OBJETOS 1. Algumas Palavras Iniciais Antes de começar o estudo sobre o projeto de Banco de Dados Orientados a Objetos (BDOO), devemos relembrar

Leia mais

Universidade Federal do Maranhão

Universidade Federal do Maranhão Universidade Federal do Maranhão Banco de Dados II Banco de Dados Distribuídos Carlos Eduardo Portela Serra de Castro * Sumário Introdução Vantagens Projeto de Bases de Dados Distribuídas Classificação

Leia mais

Processamento de Transações

Processamento de Transações Processamento de Transações Banco de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM é

Leia mais

Resolução e Critérios de Correção U.C Sistemas de Gestão de Bases de Dados. 18 de julho de 2012

Resolução e Critérios de Correção U.C Sistemas de Gestão de Bases de Dados. 18 de julho de 2012 Ministério da Educação e Ciência p-fólio Resolução e Critérios de Correção U.C. 21103 Sistemas de Gestão de Bases de Dados 18 de julho de 2012 INSTRUÇÕES O tempo de duração da prova de p-fólio é de 90

Leia mais

Contato. professorluisleite.wordpress.com

Contato. professorluisleite.wordpress.com BD II Recuperação de Falhas Professor: Luis Felipe Leite Contato luisleite@recife.ifpe.edu.br professorluisleite.wordpress.com Ciclo de três aulas Processamento de transações. Controle de Concorrência.

Leia mais

Transacções Atómicas Distribuídas

Transacções Atómicas Distribuídas Transacções Atómicas Distribuídas Exemplo O Senhor Silva é possuidor de duas contas em bancos diferentes (A e B) e pretende fazer um movimento de 100.000$00 do banco A para o banco B. O procedimento para

Leia mais

Banco de Dados II. Transações. Segurança: Introdução; Controle de Acesso; Criptografia; Recursos de SQL.

Banco de Dados II. Transações. Segurança: Introdução; Controle de Acesso; Criptografia; Recursos de SQL. Banco de Dados II Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Gerenciamento de : Recuperação; Concorrência.

Leia mais

Introdução a Banco de Dados

Introdução a Banco de Dados Introdução a Banco de Dados Prof. Mário A. Nascimento, Ph.D. mario@dcc.unicamp.br http://www.dcc.unicamp.br/~mario Material de autoria original de Raghu Ramakrishnan. 1 Bibliografia Ramakrishnan R., Database

Leia mais

Aluísio Augusto Silva Gonçalves 17 de maio de 2018

Aluísio Augusto Silva Gonçalves 17 de maio de 2018 CONSISTÊNCIA E CONSENSO CONSTRUINDO SISTEMAS DISTRIBUÍDOS TOLERANTES A FALHAS Aluísio Augusto Silva Gonçalves 17 de maio de 2018 CONTEÚDO Recapitulando Garantias de consistência Linearizabilidade Garantias

Leia mais

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Sistemas Distribuídos. Ricardo Ribeiro dos Santos Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Exclusão Mútua Transações Distribuídas

Leia mais

Scheduler Baseado em Timestamp

Scheduler Baseado em Timestamp Scheduler Baseado em Timestamp Técnica na qual toda transação Tx possui uma marca timestamp (TS(Tx)) Princípio de funcionamento (TS-Básico) no acesso a um item de dado D por operações conflitantes, a ordem

Leia mais

Programação Concorrente Locks

Programação Concorrente Locks Programação Concorrente Prof. Eduardo Alchieri Variáveis do tipo trava (lock) Lock: É um mecanismo de sincronização de processos/threads, em que processos/threads devem ser programados de modo que seus

Leia mais

Modelagem e implementação de programas concorrentes

Modelagem e implementação de programas concorrentes Modelagem e implementação de programas concorrentes Aula 5 DCC-UFMG 2010 Bibliograa A de sempre + The Mutual Exclusion Problem Part I: A Theory of Interprocess Communication L. Lamport Interferencia Interferência:

Leia mais

Técnicas de Controle de Concorrência

Técnicas de Controle de Concorrência Técnicas de Controle de Concorrência Pessimistas supõem que sempre ocorre interferência entre transações e garantem a serializabilidade enquanto a transação está ativa técnicas bloqueio (locking) timestamp

Leia mais

Sistemas de Bases de Dados 2.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas

Sistemas de Bases de Dados 2.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas DI-FCT/UNL 6 de junho de 2018 Sistemas de Bases de Dados 2.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas N. º : Nome: Grupo 1 (7 valores) 1 a) Quais são as 4 propriedades ACID

Leia mais

Conceitos. Gestão de Transacções. Transacção. Conceitos e Propriedades. Controlo de Concorrência. Recuperação. Transacções no SGBD Oracle

Conceitos. Gestão de Transacções. Transacção. Conceitos e Propriedades. Controlo de Concorrência. Recuperação. Transacções no SGBD Oracle Conceitos e Propriedades Recuperação Transacções no SGBD Oracle Conceitos Transacção Uma acção ou um conjunto de acções, realizadas por um único utilizador ou programa de aplicação que acedem ou alteram

Leia mais

Deadlock. Um problema de concorrência. Parte dos slides: Sistemas Operacionais Modernos 2ª Edição, Pearson Education

Deadlock. Um problema de concorrência. Parte dos slides: Sistemas Operacionais Modernos 2ª Edição, Pearson Education Deadlock Um problema de concorrência Parte dos slides: Sistemas Operacionais Modernos 2ª Edição, Pearson Education 1 Interação entre Processos Processos que executam em paralelo podem trocar informações

Leia mais

Administração e Optimização de BDs

Administração e Optimização de BDs Departamento de Engenharia Informática 2010/2011 Administração e Optimização de BDs Mini-Projecto 3 A entregar a 7 de Maio de 2011 2º semestre A resolução deve ser claramente identificada com o número

Leia mais

LINGUAGENS LÓGICAS E PROGRAMAÇÃO CONCORRENTE

LINGUAGENS LÓGICAS E PROGRAMAÇÃO CONCORRENTE LINGUAGENS LÓGICAS E PROGRAMAÇÃO CONCORRENTE Adriana Nery Programação lógica Paradigma Predicados Dedutiva) baseado no Cálculo de (Lógica Matemática Exemplo: Zé Carioca é um papagaio. Todo papagaio é uma

Leia mais

Sistemas Distribuídos. 13 Transações Distribuídas. Transações Distribuídas. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR

Sistemas Distribuídos. 13 Transações Distribuídas. Transações Distribuídas. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Sistemas Distribuídos 13 Transações Distribuídas n Transações Distribuídas Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Introdução Uma transação define uma sequência de operações. Objetivo: permitir

Leia mais

Controle de Concorrência em Banco de Dados

Controle de Concorrência em Banco de Dados Controle de Concorrência em Banco de Dados Controle de concorrência é um método usado para garantir que as transações sejam executadas de uma forma segura e sigam as regras ACID. Os SGBD devem ser capazes

Leia mais

Concorrência. Sistemas Distribuídos e Tolerância a Falhas. Lia Ribeiro 1

Concorrência. Sistemas Distribuídos e Tolerância a Falhas. Lia Ribeiro 1 Concorrência Sistemas Distribuídos e Tolerância a Falhas Lia Ribeiro 1 Índice Consistência Atómica e sequencial Serializability Controle de concorrência One copy Serializability 2 Exclusão Mútua Técnica

Leia mais