Fundamentals of Database Processing

Slides:



Advertisements
Apresentações semelhantes
Introdução Gdes. bancos de dados: Concorrência: Transação:
Advertisements

Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
BANCO DE DADOS Transparências baseadas no capítulo 1 do livro de KORTH e SILBERCHATZ e 1 e 2 do livro de ELMASRI e NAVATHE. Juliana Amaral e Rodrigo Baroni.
01/08/2011 Professor Leomir J. Borba- –
© Marcelo Bezerra de AlcântaraBanco de Dados II - Transação - 1 Disciplina Banco de Dados II Gerenciamento de transações Msc, Marcelo Bezerra de Alcântara.
Motor de Armazenamento
Transações Atômicas Distribuídas
Desenvolvimento em Camadas
Sumário 1 SQL Embutida 2 Processamento de Consultas
Modelos de Transações para Ambiente de Computação Móvel
Sistemas Distribuídos
Introdução a Mecanismos de controle de concorrência
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
Prof. Alexander Roberto Valdameri
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
Banco de dados distribuídos
RECUPERAÇÃO APÓS FALHA
Gerência de Transações em Sistema de Banco de Dados Móvel
Gerenciamento de Transações - Introdução
Controle de Concorrência
Locks.
Problema de Inconsistência em Transações
Um Esquema de Replicação para Suportar Conectividade Fraca em Sistemas de Informação Móveis * Gustavo Fortes Tondello PPGCC – UFSC – 2005 * Original: A.
Tópicos em redes e sistemas distribuídos
Sistemas Distribuídos
Banco de Dados e Usuários do Banco de Dados (capítulo 1)
Data Replication and Resiliency Trabalho realizado por: Rui Ferreira Nº Eng. Informática.
Transações Prof: Galina
ARQUITETURA DE SOFTWARE
Carolina Gelenske Carlos Eduardo Laís Xavier
Controle Distribuído da Concorrência
Introdução a Banco de dados
Exercícios SGBD - CESPE
Transações Atômicas Distribuídas Prof. Alcides Calsavara
Controle de concorrência
BD Distribuído Conceitos Iniciais.
Controle de Concorrência Locks. Conceito de Transação Transações podem ser vistas como um grupo de operações combinadas em uma unidade lógica de trabalho.
Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação Programa de Pós-Graduação.
Sistemas NoSQL - Chave-Valor
SGBD Distribuído Lílian Simão Oliveira.
Processos.
Transações Concorrentes
SCC Bancos de Dados e Suas Aplicações
SISTEMAS DISTRIBUÍDOS Transações Atômicas
Bancos de Dados Estrutura e Funcionamento de um SGBD
Pablo Oliveira Antonino de Assis. Agenda  Objetivo.  Introdução.  Protocolos de Recuperação.  LOG’s.  Gerenciamento de LOG em MDS.  Recuperação.
PROGRAMAÇÃO DISTRIBUÍDA Aula 02 Prof. Henrique Mongelli
Banco de Dados I Objetivo:
Definição um sistema de BD distribuído consistem em uma rede de várias ocorrências de bases de dados interligadas. característica principal para o usuário,
Modos de Desconexão para BD’s Móveis Sandberg Marcel Santos Baseado no artigo “Disconnection Modes for Mobile Databases”, de Holliday, Agrawal e El Abbadi.
Integração de Ferramentas CASE
O problema da desconexão em BD móveis Equipe: Antonio Jaime M. de Almeida Bruno de Brito Leite.
Controle de Concorrência
Universidade Federal de Santa Catarina Programa de Pós-Graduação em Ciência da Computação Lazy Database Replication with Ordering Guarantees Khuzaima Daudjee.
Serialização Relaxada em Banco de Dados Múltiplos Andressa Sebben
Universidade Federal do Rio Grande do Sul POD – Programação com Objetos Distribuídos Professor: Claúdio Fernando Resin Geyer Resumo: Transações – Tutorial.
Sumário 1 Processamento de Consultas 2 Introdução a Transações
Transações Banco de Dados II Aline S Costa 1. TRANSAÇÕES Conjunto de operações que formam uma única unidade lógica de trabalho; Conjunto de instruções.
Bancos de Dados Fundamentos Prof. Marcos R. Cardoso.
Projeto e Implementação de Sistemas de Arquivos
Professor: Leandro Chernicharo.  Uma coleção de dados relacionados;  Dados  Fatos conhecidos que podem ser gravados e têm um significado implícito.
UCSal – Bacharelado em Informática
UCSal – Bacharelado em Informática Banco de Dados Profa. Semíramis Assis
Sistemas Distribuídos Nadilma Nunes Aula Inicial – Apresentação da disciplina.
Sistemas Distribuídos
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Copyright © 2011 Ramez Elmasri and Shamkant Navathe slide 1 Tópicos  Introdução  Um exemplo  Características da abordagem de banco de dados  Vantagens.
Multilevel Transactions Eriko Werbet. Porque um novo modelo transacional? LLT em aplicações complexas; Maior flexibilidade para updates (global visibility);
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Fundamentals of Database Processing Hugo Feitosa de Figueirêdo

Sumário Arquitetura Convencional de Banco de Dados Processamento do Banco de Dados Serialização de transações Modelos Avançados de Transação

Arquitetura convencional de Banco de Dados Definição SGBD Consultas Tipos de SGBD: Centralizado; Distribuído;

Arquitetura convencional de Banco de Dados

SGBD Distribuído

SGBD Distribuído Existem 2 categorias: Sistemas de Banco de Dados Federativos Sistemas com Múltiplos Banco de Dados

SGBD Distribuído Arquitetura Federativa Sub-conjunto de servidores que são parcialmente autônomos no gerenciamento de suas atividades. Cada membro coopera e participa com outros servidores Pode ser: homogêneo heterogêneo

SGBD Distribuído Arquitetura com Múltiplos Banco de Dados Todos os servidores do sistema de banco de dados distribuído possuem total autonomia. Cada servidor fica responsável de cooperar ou não com outro servidor na arquitetura.

Particionamento e Distribuição do Banco de Dados Em Sistemas Distribuídos os Banco de Dados são distribuídos de três formas: Particionado Replicado Parcialmente Replicado Totalmente

Banco de Dados Particionado Critérios para o particionamento: A partição deve possuir a maior base de dados local. A partição deve ajudar a minimizar o custo de comunicação de dados. A partição deve ajudar a minimizar o custo da manutenção da consistência global. A partição deve ajudar na serialização das transações correntes. A partição deve diminuir o custo de recuperação. Problemas: Partição fora do ar

Replicação Parcial Banco é particionado e um subconjunto de partições que são replicadas em mais de um servidor. A replicação parcial possui todas as propriedades do esquema particionado Vantagens: Provê confiabilidade e localidade. A recuperação se torna bem mais rápida. Problemas Tempo consumido para manter a consistência global

Replicação Total Neste esquema o banco de dados é replicado inteiramente em todos os servidores. Vantagens: Localidade dos dados minimiza o custo de comunicação de dados durante o processamento de uma consulta. Maior confiabilidade e disponibilidade Problemas: Alto custo de manter a consistência global. Alto custo de armazenamento.

Particionamento e Distribuição do Banco de Dados

Processamento do Banco de Dados Transação Mantêm a consistência Transação = < Conjunto de Restrições, Banco de Dados, Programa de Aplicação> O conjunto de restrições pode ser implementado de duas formas: Programando na aplicação Incluindo como parte da estrutura de transação

Estrutura de Transação ACID Atomicidade Consistência Isolação Durabilidade Ações Desprotegidos ou Ação livre Protegidos ou Ação restrita Operação com sucesso completo ou Nunca iniciada (rollback) Ação Real

Flat Transactions Mecanismo mais simples para operação de um nível Durante suas execuções elas não disparam outra transação dependente.

Serialização de Transações Concorrência e Paralelismo Operações básicas são confrontadas Execução em série Não permite compartilhamento de dados Prejudica vazão e o tempo de resposta Execução concorrente Não garante consistência Precisa de um controle de dados compartilhados Serialização das transações concorrentes

Serialização de Transações Anomalias de Sincronização: Perda de Consistência no Banco Acesso a dados inconsistentes Perda de Atualizações

Perda de Atualização

Recuperação Inconsistente

Serialização de Transações

Teoria da Serialização Critérios de Correção Para transações Quando executada sozinha, sempre termina Quando executada sozinha, preserva a consistência do Banco de Dados Para o sistema Deve funcionar corretamente para qualquer conjunto de transações acessando qualquer Banco de Dados A resposta do Sistema deve ser independente do significado das transações e dos valores dos próprios dados armazenados Para controle de concorrência Cada transação deve eventualmente terminar Cada transação deve ser executada atomicamente, sem interferência de outras

Teoria da Serialização Duas operações p e q conflitam em um estado s, denotado de conflito(p,q), se: estado(estado(s,p),q ) <> estado(estado(s,q),p) retorno(s,q) <> retorno(estado(s,p),q) retorno(s,p) <> retorno(estado(s,q),p) Duas operações que não conflitam são compatíveis e comutam. Operações Ler(x) Escrever(x) Sim Não

Grau de Isolação Grau 0 Grau 1 Grau 2 Grau 3 Um transação não sobrescreve dados não confirmados de outra transação. Uma transação confirma sua escrita antes de ser finalizada. Grau 1 Uma transação não sobrescreve dados não confirmados de outra transação. Uma transação não confirma sua escrita antes de finalizar. Grau 2 Uma transação não lê dados não confirmados de outra transação Grau 3 Uma transação não lê dados não confirmados de outra transação antes deste finalizar

Modelos Avançados de Transação Modelo de Transação Aninhada SAGA Transação Cooperativa Contrato Transação Flexível

Referências Bibliográficas ELMASRI, R. A. and NAVATHE, S. B. Fundamentals of Database Systems. 2nd. Addison-Wesley Longman Publishing Co., Inc. 1998. KUMAR, V. Mobile Database Systems. Wiley-Interscience. 2006.