Transacções em Sistemas Distribuídos

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

Download "Transacções em Sistemas Distribuídos"

Transcrição

1 Transacções em Sistemas Distribuídos Função efectuarpagamento do PagAmigo Primeira solução efectuarpagamento(clientea, clienteb, Montante) { bancoa.lersaldo (contaa, SaldoA); bancob.lersaldo (contab, SaldoB); bancoa.actualizarsaldo (contaa, saldoa-montante); bancob.actualizarsaldo (contab, saldob+montante); } Quais os problemas desta solução? Page 1

2 Função efectuarpagamento do PagAmigo Solução com Transacção Atómica efectuarpagamento(clientea, clienteb, Montante) { begintransaction; bancoa.lersaldo (contaa, SaldoA); bancob.lersaldo (contab, SaldoB); bancoa.actualizarsaldo (contaa, saldoa-montante); bancob.actualizarsaldo (contab, saldob+montante); commit; } Função efectuarpagamento do PagAmigo Outra solução com Transacção Atómica efectuarpagamento(clientea, clienteb, Montante) { begintransaction; bancoa.lersaldo (contaa, SaldoA); bancob.lersaldo (contab, SaldoB); if (saldoa < montante) abort; else { bancoa.actualizarsaldo (contaa,saldoa-montante); bancob.actualizarsaldo (contab, saldob + Montante); commit; } } Em que situações pode a transação abortar? Page 2

3 Transacções Atómicas Locais Revisão da cadeira de Bases de Dados Sistema Transaccional Aplicações Iniciar Confirmar Abortar Aplicações Ler Escrever Sistema Transaccional Sistema Operativo Hardware Page 3

4 Transação Uma transação é uma sequência de leituras e escritas a objetos partilhados com outras transações 12/13 Sistemas Distribuídos 7 Propriedades das transacções ACID Atomicidade Transacção ou se executa na totalidade ou não se executa O sistema tem de ser capaz de repor a situação inicial no caso da transacção abortar (por inciativa do programador ou falha do sistema) Page 4

5 Propriedades das transacções ACID Consistência Uma transação é uma transformação correta do estado. Supõe-se que o conjunto das ações da transação não viola nenhuma das regras de integridade associadas ao estado Isto requer que a transação seja um programa correto 12/13 Sistemas Distribuídos 9 Propriedades das transacções ACID Isolamento Normalmente definida pela condição de serializabilidade (serial-equivalence): Considere uma execução concorrente de leituras e escritas de múltiplas transações A execução concorrente diz-se serializável quando existe uma execução sequencial (das mesmas transações) equivalente à execução concorrente Ou seja, cujas leituras devolvam o mesmo valor e objetos escritos ficam com mesmo valor em ambas as execuções (concorrente e sequencial) Page 5

6 Propriedades das transacções ACID Isolamento Esta execução concorrente é serializável? Se sim, qual a execução sequencial equivalente? Propriedades das transacções ACID Isolamento Esta execução concorrente é serializável? Se sim, qual a execução sequencial equivalente? Page 6

7 Propriedades das transacções - ACID Durabilidade os resultados de uma transacção que confirmou permanecem depois de esta acabar e sobrevivem ao conjunto de faltas expectáveis Solução: resultados escritos em memóriaestável e com capacidade de recuperação das faltas dos discos que forem toleradas. Atomic, Consistent, Isolated, Durable Como gerir execuções concorrentes de transações? 12/13 Sistemas Distribuídos 18 Page 7

8 Controlo de concorrência Solução pessimista ( pedir licença ) Pressupõe que os conflitos são frequentes e obriga à prévia sincronização de todos os acessos. Trincos de Leitura/Escrita Leitura Escrita Leitura Compatível Conflito Escrita Conflito Conflito Controlo de concorrência pessimista Sincronização em 2 fases estrita Cada objeto/grupo de objetos geridos por um trinco de leitura/escrita Sincronização em duas fases estrita (strict two phase locking): À medida que a transação vai lendo/escrevendo sobre objetos, vai adquirindo sucessivamente os respetivos trincos (primeira fase) Na terminação da transação (commit ou abort), liberta os trincos (segunda fase) Page 8

9 Controlo de concorrência pessimista Sincronização em 2 fases estrita: exemplo 12/13 Sistemas Distribuídos 25 Interblocagem A sincronização com trincos pode conduzir a interblocagem obrigando a mecanismos para a resolver: Prevenção (ex: ordem parcial sobre trincos, adquirir todos os trincos pela mesma ordem, caso sejam conhecidos de antemão) Problema: na maior parte das vezes não é possível, e origina quebra de desempenho Detecção da interblocagem usando temporizador método simples, pouco preciso, mas adequado ou grafo com história de sincronização das transacções (indica recursos protegidos por trincos e as transacções que esperam por eles) e obrigando a abortar as transacções Page 9

10 Interblocagem: exemplo Isolamento (cont.) Solução pessimista( pedir licença ) Pressupõe que os conflitos são frequentes e obriga à prévia sincronização de todos os acessos. Solução optimista ( pedir desculpa ) Considera que os conflitos são raros Na confirmação verifica a existência de conflitos Obriga a manter carimbos temporais das actualizações para poder determinar quando há um conflito e nesse caso abortar as transacções envolvidas Page 10

11 Solução optimista Recuperação das falhas de paragem 12/13 Sistemas Distribuídos 30 Page 11

12 Recuperação das Falhas de Paragem A recuperação tem de basear-se na existência de informação redundante. A política de recuperação é condicionada pela política de actualização dos dados: actualização directa(in-place updating) -as escritas são efectuadas sobre os dados reais residentes nos suportes magnéticos. actualização em versões(out-of-place updating) - são criadas novas versões dos dados, preservando os valores originais. Actualização Directa A política de recuperação depende da forma como é actualizada a cache. No momento da confirmação: Limpar a cache (cache flush) na altura da confirmação ou Manter os dados em cache No momento da escrita de dados Permitir a escrita de dados de transacções activas na memória persistente. ou Manter os dados das transacções activas apenas em memória volátil (gestão assíncrona) Necessário manter informação redundante no ficheiro de diário (log) A informação a manter depende destas decisões Page 12

13 Write Ahead Logging A gestão assíncrona da cache é sempre mais eficiente e permite gerir melhor a memória volátil. Neste caso o diário tem de conter informação para fazere desfazer o resultado das operações (redo/undo) É também necessário garantir que a informação é escrita no diário antes da modificação das páginas(write-ahead logging) Actualização em Versões: Páginas sombra (Shadow pages) Copia-se inicialmente a tabela de páginas de modo a poder reconstituir a versão Se a transacção confirmar é necessário comutar atomicamente o ficheiro no directório A dispersão de ficheiros pelo disco e a proliferação de versões são limitações deste método. Page 13

14 Gestão do Diário Aspectos a considerar Registos: físicos ou lógicos Robustez do diário a falhas dos discos Escrita síncrona/assíncrona dos registos Redução do espaço do ficheiro do diário através de marcas de recuperação (checkpointing) Faltas durante a recuperação Exemplo de Diário Page 14

15 Arquitectura do Sistema Transaccional 12/13 Sistemas Distribuídos 37 Arquitectura do Sistema Transaccional Gestor de Sincronização é responsável pela sincronização de todos os acessos aos dados manipulados pelas transacções. Deve, portanto, ser chamado em todas as situações de leitura ou escrita para gerir os trincos associados aos objectos e tratar os problemas de interblocagem. Gestor da cache gere a relação entre os discos e a memória volátil. A optimização é obtida, evitando tanto quanto possível executar escritas síncronas e agrupando escritas em bloco para o disco. Gestor do Diário (Log) gere a informação redundante. Esta informação é mantida numa lista que regista as operações relevantes de actualização da estrutura de dados. O diário é na realidade um ficheiro escrito sequencialmente, o que garante que a informação é registada segundo a ordem de execução das operações. Page 15

16 Arquitectura do Sistema Transaccional Gestor da recuperação recupera o sistema para um estado consistente sempre que uma falta for detectada. A gestão da cache, a informação escrita no diário e o algoritmo de recuperação estão intimamente relacionados Gestor da memória estável garante a persistência dos dados. fornece uma abstracção de memória persistente, capaz de manter a informação mesmo quando existem falhas dos discos. Transacções Atómicas Distribuídas Page 16

17 Transacções distribuídas: Modelo de Faltas Distribuição implica lidar com: Falta dos discos Falta das máquinas Falta das comunicações Faltas de Paragem O modelo de faltas tem de considerar diversas simplificações Sistemas: apenas faltas de paragem não se consideram faltas bizantinas Modelo funciona num sistema assíncrono (tempo de propagação das mensagens pode ser arbitrariamente longo) Faltas temporárias de comunicação toleradas pelos protocolos de transporte, não se consideram faltas permanentes da rede (partições) Papel do Coordenador T = opentransaction a.withdraw(4); c.deposit(4); b.withdraw(3); d.deposit(3); closetransaction opentransaction closetransaction Client T. join join b.withdraw(t, 3); join Note: the coordinator is in one of the servers, e.g. BranchX participant A BranchX participant B BranchY participant C D BranchZ a.withdraw(4); b.withdraw(3); c.deposit(4); d.deposit(3); Só quando é chamado closetransaction se executa o protocolo para confirmar ou abortar a transacção atomicamente Page 17

18 Protocolo de confirmação em duas fases Two-Phase Commit (2PC) Transacções distribuídas: Problemas a considerar A tomada de decisão de abortar ou confirmar uma transacção é o problema mais complexo a resolver Requer um consenso entre os diferentes participantes numa transacção distribuída Page 18

19 Protocolo (sem falhas) Coordinator Participant step 1 status prepared to commit (waiting for votes) cancommit? Yes step 2 status prepared to commit 3 committed docommit (uncertain) havecommitted 4 committed done Protocolo (sem falhas) Coordenador Envia PREPARAR a todos if (todos votaram sim) decisão coord = commit Envia COMMIT a todos else decisão coord = abort Envia ABORT a todos que votaram sim exit Participante i Envia voto i ao coord. if (voto i == não) decisão i = abort exit if (recebe ABORT) decisão i = abort else decisão i = commit exit Page 19

20 Interacção Cliente-Coordenador API do Coordenador opentransaction() -> trans; starts a new transaction and delivers a unique TID trans. This identifier will be used in the other operations in the transaction. closetransaction(trans) -> (commit, abort); ends a transaction: a commit return value indicates that the transaction has committed; an abort return value indicates that it has aborted. aborttransaction(trans); aborts the transaction. Operações no 2PC cancommit?(trans)-> Yes / No Call from coordinator to participant to ask whether it can commit a transaction. Participant replies with its vote. docommit(trans) Call from coordinator to participant to tell participant to commit its part of a transaction. doabort(trans) Call from coordinator to participant to tell participant to abort its part of a transaction. havecommitted(trans, participant) Call from participant to coordinator to confirm that it has committed the transaction. getdecision(trans) -> Yes / No Call from participant to coordinator to ask for the decision on a transaction after it has voted Yes but has still had no reply after some delay. Used to recover from server crash or delayed messages. Page 20

21 Transacções distribuídas: 2PC - diagramas de interacções begin commit W diário Envia mensagem preparar Espera diário Espera Todas? S W diário Envia mensagem Pronto? S W diário Envia mensagem abort ready Um Não? commit abort S W diário Envia mensagem W diário Envia mensagem Espera diário Abortar? Espera S W diário commit Todas? S W diário abort end Termina transacção Envia mensagem 2008/2009 José Alves Marques, Rodrigo Rodrigues e João Barreto Logs do protocolo Evento Info. escrita no log Instante da escrita Coord. envia PREPARAR Begin commit Em paralelo com envio Assume um diário (log) persistente com escritas atómica Participante vota sim Sim Antes de enviar voto Participante vota não Não Em paralelo com envio Coord. decide commit Commit Antes de enviar commit Coord. decide abort Abort Em paralelo com envio Particip. recebe decisão Commit ou Abort Em paralelo com decisão Page 21

22 Diagrama de Estados - Coordenador A detecção de faltas de paragem é por timeout coordenador pode logo tomar a decisão de abortar ou tentar contactar novamente os participantes inicial Input: - Output: Envia PREPARAR a todos temporizador expirou Input: Recebe um ou mais NÃO Ou temporizador expira Output: Envia ABORT a todos abort espera Input: Recebe SIM de todos Output: Envia COMMIT a todos commit Diagrama de Estado - Participante Input: (Recebe PREPARAR e voto i == não) Ou temporizador expira Output: Envia não ao coord. inicial Preparado temporizador expirou Input: Recebe PREPARAR e voto i == sim Output: Envia sim ao coordenador Executar protocolo de terminação abort Input: Recebe ABORT Input: Recebe COMMIT commit Page 22

23 Transacções distribuídas: Tolerância a faltas no 2PC Não recepção de mensagens Detectadas com um temporizador no Coordenador ou nos Participantes Timeout no Coordenador Estado Esperar Não pode confirmar unilateralmente a transacção Mas pode unilateralmente optar por abortar a transacção Se considerar que o atraso na resposta se deve a uma falta Estados Abortar e Confirmar O Coordenador não pode terminar a transacção Tem que receber a confirmação de todos os Participantes Pode repetir a mensagem global previamente enviada 2008/2009 José Alves Marques, Rodrigo Rodrigues e João Barreto Transacções distribuídas: Tolerância a faltas no 2PC Timeout num Participante Estado Inicial Pode optar unilateralmente por abortar a transacção Ou verifica o estado do Coordenador Estado Preparado Não pode progredir Depende da decisão do Coordenador que já influenciou A transacção fica activa e bloqueada até se saber essa decisão Se os Participantes interactuarem é possível evoluir»obtendo a decisão do coordenador que chegou aos outros Participantes Falha permanente do Coordenador (apenas) Protocolos de eleição de um novo Coordenador 2008/2009 José Alves Marques, Rodrigo Rodrigues e João Barreto Page 23

24 Recuperação depois de falta de paragem Recuperação do Coordenador Estados Inicial e Esperar Repete as mensagens de Preparação para obter novamente a votação dos TMs Estado Confirmar ou Abortar Se ainda não recebeu todas as confirmações repete o envio da mensagem global previamente enviada Recuperação de um Participante Estado Inicial Aborta unilateralmente a transacção Estado Preparado Reenvia o seu voto (sim ou não) para o Coordenador Transacções distribuídas: Problemas do 2PC O protocolo é bloqueante: Obriga os Participantes a esperar pela recuperação do Coordenador E vice-versa Não é possível fazer uma recuperação totalmente independente Há alternativas não-bloqueantes Sob modelos de faltas mais restritivos Normalmente muito mais complexas (ex. 3PC) Page 24

25 Transacções distribuídas Arquitectura X/Open 12/13 Sistemas Distribuídos 68 Consórcio X/OPEN Esforço de normalização dos protocolos e interfaces para interligação de sistemas de informação heterogéneos DTP (Distributed Transaction Processing) Muito influenciado pela norma de facto que constituiu a arquitectura SNA da IBM e a sua interface LU 6.2 Page 25

26 Arquitectura X/Open Gestores de Recursos -RM (resource manager) Armazenam os dados Em BDs relacionais, sistemas de ficheiros com actualizações atómicas, etc. Garantem localmente as propriedades das transacções Monitores Transaccionais -TM (transaction managers) Coordenadores dos RM Através da interface XA Execução dos protocolos de iniciação/terminação das transacções Um em cada máquina (ou em cada grupo de máquinas) Transacções distribuídas X/Open Aplicação Iniciar Confirmar Abortar TM Associar Preparar Confirmar Abortar Ler Escrever RM Page 26

27 Transacções distribuídas: X/Open (com distribuição) TM TM Aplicação SC SC RM RM Transacções distribuídas: X/Open Uma aplicação inicia uma transacção Invoca o TM local que lhe atribui um identificador único A aplicação contacta em seguida os RMs Para efectuar as operações de leitura e escrita Usa o identificador da transacção Os RMs associam-se à transacção Quando um RM recebe a primeira operação relacionada com uma transacção desconhecida contacta o TM local para se associar à transacção A transacção termina Todos os TM envolvidos executam um protocolo de consenso distribuído Page 27

28 TP-Monitor components (generic) Administration and operations interfaces client client client Presentation services persistent queue data dictionary Authentication Application program Monitor services scheduling queues binding Log manager load balancing server class context Recovery manager program library context database internal resource managers persistent queue database external resource manager From Transaction Processing Gray&Reuter. Morgan Kaufmann 1993 Monitor Transaccional Tuxedo da BEA X/Open DTP Reference Model Application Program (AP) Tuxedo System in DTP Model C, COBOL, 4GLs or CASE appllications C-ISAM or SQL or Other TX API Transaction Manager (TM) XATMI or CPI-C or TxRPC or Peer-toPeer SQL System /T TX API Unix System V XATMI or TxRPC XA + XA+ XA Communication Resource Manager (CRM) XA System /T Communications Resource Manager (RM) OSI-TP XAP-TP XA-Compliant Resouce Manager OSI-TP XAP-TP Page 28

Arquitecturas Tolerantes a faltas em Sistemas Distribuídos

Arquitecturas Tolerantes a faltas em Sistemas Distribuídos Arquitecturas Tolerantes a faltas em Sistemas Distribuídos Replicação de Servidores Transacções Atómicas Protocolos de Replicação Replicação passiva vs. activa Replicação de máquinas de estados vs. Replicação

Leia mais

A compreensão do mecanismo de transações é essencial, sempre que a

A compreensão do mecanismo de transações é essencial, sempre que a Transações A compreensão do mecanismo de transações é essencial, sempre que a base de dados d servir várias clientes simultaneamente. Em SQL é possível definir explicitamente os limites de uma transação.

Leia mais

UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO. Licenciatura em Engenharia Informática e Computadores Alameda e Taguspark

UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO. Licenciatura em Engenharia Informática e Computadores Alameda e Taguspark UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Licenciatura em Engenharia Informática e Computadores Alameda e Taguspark Sistemas Distribuídos e Engenharia de Software Projecto de 2010/2011

Leia mais

Replicação de servidores

Replicação de servidores Arquiteturas Tolerantes a faltas em Sistemas Distribuídos Replicação de servidores Replicação: que benefícios nos dá? 1) Melhor desempenho e escalabilidade Replicar serviços permite que algumas operações

Leia mais

Cliente/Servidor. Monitores Transacionais. Graça Bressan. Graça Bressan/LARC 2000 1

Cliente/Servidor. Monitores Transacionais. Graça Bressan. Graça Bressan/LARC 2000 1 Cliente/Servidor Monitores Transacionais Graça Bressan Graça Bressan/LARC 2000 1 Transação Filosofia de projeto de aplicação que garante robustez em sistemas distribuídos. É executada sob o controle de

Leia mais

Projecto de Engenharia de Software e Sistemas Distribuídos 2009-10. Requisitos para a 3ª entrega do projecto. FeaRSe.

Projecto de Engenharia de Software e Sistemas Distribuídos 2009-10. Requisitos para a 3ª entrega do projecto. FeaRSe. Departamento de Engenharia Informática Engenharia de Software, Sistemas Distribuídos Requisitos para a 3ª entrega do projecto FeaRSe 6 de Maio de 2010 Índice Índice... 1 1 Sumário... 2 2 Requisitos...

Leia mais

Bases de Dados Distribuídas

Bases de Dados Distribuídas Introdução Devido ao ambiente de grande competitividade em que as organizações de hoje têm que actuar, estas são forçadas a distribuir-se geograficamente, procurando as condições locais mais favoráveis

Leia mais

Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos.

Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos. 1. Introdução aos Sistemas de Bases de Dados Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos. O conceito de base de dados faz hoje parte do nosso

Leia mais

Arquitecturas de Sistemas de Base de Dados

Arquitecturas de Sistemas de Base de Dados Arquitecturas de Sistemas de Base de Dados Sistemas Centralizados Sistemas Cliente-Servidor Sistemas Paralelos Sistemas Distribuídos Sistemas Centralizados Correm sobre um único computador e não interagem

Leia mais

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 tanaka@uniriotec.br Bancos de Dados Distribuídos Processamento de Transações Ambiente com SGBD Distribuído Transações

Leia mais

Bases de Dados 2012/2013 Gestão de Recuperação. Helena Galhardas. Sumário

Bases de Dados 2012/2013 Gestão de Recuperação. Helena Galhardas. Sumário Bases de Dados 2012/2013 Gestão de Recuperação Helena Galhardas Sumário Classificação de Falhas Estrutura de Armazenamento Recuperação e Atomicidade Recuperação Baseada em Diário O Algoritmo do Sistema

Leia mais

Sistemas Operativos I

Sistemas Operativos I Componentes de um Sistema Operativo Maria João Viamonte / Luis Lino Ferreira Fevereiro de 2006 Sistema Operativo Um Sistema Operativo pode ser visto como um programa de grande complexidade, responsável

Leia mais

Sistemas de Informação

Sistemas de Informação 1 1 Bases de Dados SISTEMAs DE GESTÃO DE ANO LECTIVO 2001/2002 Sistemas de Informação 2 2 Sistemas de Informação e organizações Informação e Informação nas organizações Sistemas de Informação (SI) Planeamento

Leia mais

Transacções Atómicas em Web Services

Transacções Atómicas em Web Services Transacções Atómicas em Web Services Transacções conceito básico As transacções são um padrão de base na construção de aplicações distribuídas fiáveis As actividades podem ter um espectro muito diversificado

Leia mais

Sistemas de Gerência de Bancos de Dados. 7 - Outras Arquiteturas para SGBDs 7.2 - SGBDs Cliente-Servidor

Sistemas de Gerência de Bancos de Dados. 7 - Outras Arquiteturas para SGBDs 7.2 - SGBDs Cliente-Servidor Sistemas de Gerência de Bancos de Dados 7 - Outras Arquiteturas para SGBDs 7.2 - SGBDs Cliente-Servidor 1 Alternativas de Arquitetura Consistência de Cache Tópicos 2 Servidor de Objetos: Alternativas de

Leia mais

Sistema de Base de Dados Distribuída

Sistema de Base de Dados Distribuída Base de Dados Distribuídas Bases de Dados Heterogéneas e Homogéneas Armazenagem Distribuída de Dados Transacções Distribuídas Protocolos de Commit Processamento Distribuído de Consultas Controlo de Concorrência

Leia mais

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso):

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso): TRANSAÇÕES 1. Visão Geral Uma transação é uma unidade lógica de trabalho (processamento) formada por um conjunto de comandos SQL cujo objetivo é preservar a integridade e a consistência dos dados. Ao final

Leia mais

23/05/12. Recuperabilidade. Recuperabilidade. Recuperabilidade. Recuperabilidade. Recuperabilidade. Recuperação de Falhas em SGBDD

23/05/12. Recuperabilidade. Recuperabilidade. Recuperabilidade. Recuperabilidade. Recuperabilidade. Recuperação de Falhas em SGBDD Recuperação de Falhas em SGBDD Aluno: Antônio Ezequiel de Mendonça daem@cin.ufpe.br Orientadora: Ana Carolina Brandão Salgado A recuperação de transações que falharam significa que o BD será restaurado

Leia mais

Tolerância a Faltas. Índice. Terminologia. Replicação Passiva e activa Modelo Transaccional Transacções distribuídas

Tolerância a Faltas. Índice. Terminologia. Replicação Passiva e activa Modelo Transaccional Transacções distribuídas Tolerância a Faltas Índice Terminologia Falta, erro, falha Fiabilidade, disponibilidade Replicação Passiva e activa Modelo Transaccional Transacções distribuídas Sistema Computacional Sistema computacional:

Leia mais

LEIC/LERC 2010/11 Repescagem do 2º Teste de Sistemas Distribuídos Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas.

LEIC/LERC 2010/11 Repescagem do 2º Teste de Sistemas Distribuídos Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Número: Nome: LEIC/LERC 2010/11 Repescagem do 2º Teste de Sistemas Distribuídos 24 de Junho de 2011 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m Grupo

Leia mais

Noções de Processamento de Transações, Controle de Concorrência e Recuperação de Falhas

Noções de Processamento de Transações, Controle de Concorrência e Recuperação de Falhas Noções de Processamento de, e Banco de Dados I 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 Transação

Leia mais

Módulo I: Processamento de Transações. (Aulas 1 e 2) Clodis Boscarioli

Módulo I: Processamento de Transações. (Aulas 1 e 2) Clodis Boscarioli Módulo I: Processamento de Transações (Aulas 1 e 2) Clodis Boscarioli Agenda: Introdução: Apresentação da disciplina; Leitura do Plano de Ensino; Conceito de transação; Estados de uma transação; Teoria

Leia mais

Grupo I [7,3v] Número: Nome: Página 1 de 6

Grupo I [7,3v] Número: Nome: Página 1 de 6 Número: Nome: Página 1 de 6 LEIC/LETI 2013/14, Repescagem do 2º Teste de Sistemas Distribuídos, 1/7/14 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m Grupo

Leia mais

Tolerância a Faltas. Departamento de Engenharia Informática

Tolerância a Faltas. Departamento de Engenharia Informática Tolerância a Faltas Departamento de Engenharia Informática Índice Terminologia Falta, erro, falha Fiabilidade, disponibilidade Replicação Sistema Computacional Sistema computacional: Formado por um conjunto

Leia mais

Consensos. Universidade da Beira Interior Mestrado em Engenharia Informática Sistemas Distribuídos e Tolerância a Falhas

Consensos. Universidade da Beira Interior Mestrado em Engenharia Informática Sistemas Distribuídos e Tolerância a Falhas Universidade da Beira Interior Mestrado em Engenharia Informática Sistemas Distribuídos e Tolerância a Falhas Consensos Trabalho elaborado por: Catarina Nunes nº 2064 Diogo Sousa nº 2289 Vera Marcelino

Leia mais

Tolerância a Faltas. Modelo de Faltas

Tolerância a Faltas. Modelo de Faltas Tolerância a Faltas Modelo de Faltas No modelo de faltas é necessário identificar quais as expectáveis e em seguida decidir: quais as faltas que vão ser recuperadas quais as que não vão ser toleradas.

Leia mais

Programação Paralela Usando Memória Transaccional com Suporte a Aninhamento Paralelo

Programação Paralela Usando Memória Transaccional com Suporte a Aninhamento Paralelo Programação Paralela Usando Memória Transaccional com Suporte a Aninhamento Paralelo David Granchinho Instituto Superior Técnico Resumo Para poder tirar partido das arquitecturas multi-processador é necessário

Leia mais

Gonçalo Amador Ricardo Alexandre. Bases de Dados Distribuídas

Gonçalo Amador Ricardo Alexandre. Bases de Dados Distribuídas Sistemas Distribuidos e Tolerância a Falhas Gonçalo Amador Ricardo Alexandre Departamento de Informática Universidade da Beira Interior Bases de Dados Distribuídas 1 Modelos de Bases de Dados 2 Conceitos

Leia mais

Sistemas Distribuídos e Paralelos

Sistemas Distribuídos e Paralelos Sistemas Distribuídos e Paralelos Tolerância a Falhas Ricardo Mendão Silva Universidade Autónoma de Lisboa r.m.silva@ieee.org January 14, 2015 Ricardo Mendão Silva (UAL) Sistemas Distribuídos e Paralelos

Leia mais

Transações Controle Distribuído de Concorrência Métodos de Controle de Concorrência Deadlocks

Transações Controle Distribuído de Concorrência Métodos de Controle de Concorrência Deadlocks Alcides Pamplona alcides.pamplona@gmail.com 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) Conteúdo Transações Controle Distribuído de Concorrência Métodos de Controle

Leia mais

GBC043 Sistemas de Banco de Dados Transações, Controle de Concorrência e Recuperação de Dados

GBC043 Sistemas de Banco de Dados Transações, Controle de Concorrência e Recuperação de Dados GBC043 Sistemas de Banco de Dados Transações, Controle de Concorrência e Recuperação de Dados Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Introdução Sistemas multiusuário

Leia mais

Banco de Dados Distribuídos

Banco de Dados Distribuídos A imagem não pode ser exibida. Talvez o computador não tenha memória suficiente para abrir a imagem ou talvez ela esteja corrompida. Reinicie o computador e abra o arquivo novamente. Se ainda assim aparecer

Leia mais

OMA (Object Management Arquitecture): Application Interfaces. Domain Interfaces. Domain. Interfaces. Object Request Broker (ORB) Object Services

OMA (Object Management Arquitecture): Application Interfaces. Domain Interfaces. Domain. Interfaces. Object Request Broker (ORB) Object Services 1 Copyright 1998, 1999 Francisco Reverbel OMA (Object Management Arquitecture): Application Interfaces Domain Domain Interfaces Interfaces Object Request Broker (ORB) Object Services 2 Copyright 1998,

Leia mais

Processamento de Transações

Processamento de Transações UNIVERSIDADE FEDERAL DO MARANHÃO - UFMA Banco de Dados II Processamento de Transações Carlos Eduardo Portela Serra de Castro * Processamento de Transações Introdução Definição Problemas de consistência

Leia mais

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso 1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso aos dados neles armazenados e com falhas ao nível da comunicação de dados. - Na replicação

Leia mais

O SGBD vê cada transação como uma seqüência de leituras e escritas delimitada por comandos begin e commit (ou abort).

O SGBD vê cada transação como uma seqüência de leituras e escritas delimitada por comandos begin e commit (ou abort). 1 Conceito básico para controle de concorrência e recuperação: a transação. Uma seqüência de ações que são consideradas uma unidade atômica (indivisível) de trabalho. Acões elementares do SGBD: Leituras

Leia mais

Monitores Transaccionais

Monitores Transaccionais Monitores Transaccionais Tecnologias de Middleware João Nogueira Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Setembro de 2006 Transacção Unidade de trabalho que executa

Leia mais

LEIC/LETI 2014/15, 2º

LEIC/LETI 2014/15, 2º Número: Nome: Página 1 de 6 LEIC/LETI 2014/15, 2º Teste de Sistemas Distribuídos, 16 de Junho de 2015 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m Grupo

Leia mais

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso 1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso aos dados neles armazenados e com falhas ao nível da comunicação de dados. - Na replicação

Leia mais

CICS Resumo. Acerca deste resumo: Introdução (1-2) Arquitectura (3-4)

CICS Resumo. Acerca deste resumo: Introdução (1-2) Arquitectura (3-4) CICS Resumo Acerca deste resumo: Este é o resumo da matéria estudada para apresentar o sistema IBM CICS, o monitor transaccional mais utilizado. Cada secção diz respeito a um conjunto de acetatos que são

Leia mais

Banco de Dados - Senado

Banco de Dados - Senado Banco de Dados - Senado Transações, Isolamento, Concorrência e Bloqueio Banco de Dados Distribuído Material preparado :Prof. Marcio Vitorino Ilka Kawashita kawashi@gmail.com Transações Uma transação é

Leia mais

Sistemas Informáticos

Sistemas Informáticos Sistemas Informáticos Sistemas Distribuídos Eng.ª Sistemas de Informação Escola Superior de Tecnologia e Gestão - IPVC Ano Lectivo 2005-2006 1.º Semestre Gestão de Nomes 1 - Objectivos - Os nomes são fundamentais

Leia mais

Transações. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com. Material do Prof. Paulo Pires

Transações. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com. Material do Prof. Paulo Pires Transações Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Material do Prof. Paulo Pires Introdução a Transações SGBD sistema de processamento de operações de acesso ao BD SGBDs são em geral multi-usuários

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Capítulo 1 Introdução Material de suporte às aulas de Sistemas Distribuídos de Nuno Preguiça Copyright DI FCT/ UNL / 1 NOTA PRÉVIA A apresentação utiliza algumas das figuras do livro

Leia mais

Gerenciamento de Transações. Banco de Dados. Gerenciamento de Transações. Gerenciamento de Transações. Gerenciamento de Transações

Gerenciamento de Transações. Banco de Dados. Gerenciamento de Transações. Gerenciamento de Transações. Gerenciamento de Transações Banco de Dados Fernando Fonseca Ana Carolina Mono-usuário Multi-usuário Um dos critérios de classificação de um SGBD: NÚMERO DE USUÁRIOS que podem acessar o sistema concorrentemente Conceito de Multi-

Leia mais

Tópicos Avançados de Bases de Dados Instituto Politécnico da Guarda, Escola Superior de Tecnologia e Gestão, 2005/2006

Tópicos Avançados de Bases de Dados Instituto Politécnico da Guarda, Escola Superior de Tecnologia e Gestão, 2005/2006 Programa de TABD 2004/2005 Componente teórica Tópicos Avançados de Bases de Dados Revisão e complemento de bases de dados relacionais Revisão de conceitos básicos Transacções e controlo de concorrência

Leia mais

Recuperação de Falhas

Recuperação de Falhas Recuperação de Falhas 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 1 Recuperação

Leia mais

RESUMO CAPÍTULO 16 OVERVIEW OF TRANSACTION MANAGEMENT. Prof.: Geovane Magalhães Alunos: Gabriela G. Martins Edmar R. S. de Rezende

RESUMO CAPÍTULO 16 OVERVIEW OF TRANSACTION MANAGEMENT. Prof.: Geovane Magalhães Alunos: Gabriela G. Martins Edmar R. S. de Rezende RESUMO CAPÍTULO 16 OVERVIEW OF TRANSACTION MANAGEMENT Prof.: Geovane Magalhães Alunos: Gabriela G. Martins Edmar R. S. de Rezende ÍNDICE ANALÍTICO 16.1 AS PROPRIEDADES ACID... 3 16.1.1 CONSISTÊNCIA E ISOLAMENTO...

Leia mais

Introdução aos Sistemas Operativos

Introdução aos Sistemas Operativos Introdução aos Sistemas Operativos Computadores e Redes de Comunicação Mestrado em Gestão de Informação, FEUP 06/07 Sérgio Sobral Nunes mail: sergio.nunes@fe.up.pt web: www.fe.up.pt/~ssn Sumário Definição

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 8 Sistema de Arquivos Distribuído Sumário Problemas Solução

Leia mais

Sumário. Recuperação de Falhas

Sumário. Recuperação de Falhas Sumário 1 Processamento de Consultas 2 Introdução a Transações 3 Recuperação de Falhas 4 Controle de Concorrência 5 Banco de Dados Distribuído Recuperação de Falhas Garantia de atomicidade e durabilidade

Leia mais

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro !"#$ Excepção: condição de erro; quando ocorre o erro é levantada uma excepção que interrompe o fluxo normal de execução do programa e o direcciona para uma rotina de tratamento

Leia mais

SISTEMA DE ARQUIVOS DISTRIBUÍDOS

SISTEMA DE ARQUIVOS DISTRIBUÍDOS SISTEMA DE ARQUIVOS DISTRIBUÍDOS Sistemas Distribuídos 331 Arquivo: objeto que existe após criação, é imune a falhas temporárias e é persistente até que seja destruído Propósito de arquivos: armazenamento

Leia mais

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy) Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes

Leia mais

Processamento de Transação

Processamento de Transação Processamento de Transação Banco de Dados II 3ª Série Transações Introdução a Transações Propriedades ACID Controle de Concorrência e Restauração Recuperação da Transação COMMIT de duas fases Estado da

Leia mais

Sincronização. Cooperação entre Processos

Sincronização. Cooperação entre Processos Sincronização Parte II Programação Concorrente Cooperação entre Processos Vários processos executam em conjunto uma ou mais tarefas, nas quais Competem por recursos Indicam uns aos outros a: Ausência/existência

Leia mais

3 Trabalhos Correlatos

3 Trabalhos Correlatos 3 Trabalhos Correlatos Este capítulo tem por objetivo apresentar os principais modelos de transações propostos para o ambiente de computação móvel e a motivação para a proposta de um novo modelo de transações.

Leia mais

Bancos de Dados I 2013/02. Controle de Concorrência com Locks Transações em SQL Prof. Altigran Soares da Silva

Bancos de Dados I 2013/02. Controle de Concorrência com Locks Transações em SQL Prof. Altigran Soares da Silva Bancos de Dados I 2013/02 Controle de Concorrência com Locks Transações em SQL Prof. Altigran Soares da Silva Visão Geral/Revisão ACID l Atomicidade: Gerenciador de transações l Consistência=controle concorrência/commit

Leia mais

SISTEMAS DISTRIBUÍDOS (1. CICLO)

SISTEMAS DISTRIBUÍDOS (1. CICLO) SISTEMAS DISTRIBUÍDOS (1. CICLO) Capítulo 1 Introdução Material de suporte às aulas de Sistemas Distribuídos de Nuno Preguiça Copyright DI FCT/ UNL / 1 NOTA PRÉVIA A apresentação utiliza algumas das figuras

Leia mais

Bibliografia Relembrando Conceitos

Bibliografia Relembrando Conceitos Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Linguagem de Programação de Banco de Dados Aula 07 - Gerenciamento de transações Objetivos 1. Compreender a necessidade do uso das transações; 2. Entender

Leia mais

Programação Paralela Usando Memória Transaccional com Suporte a Aninhamento Paralelo

Programação Paralela Usando Memória Transaccional com Suporte a Aninhamento Paralelo Programação Paralela Usando Memória Transaccional com Suporte a Aninhamento Paralelo David José Relvas de Jesus Granchinho (Licenciado em Engenharia Informática e de Computadores) Dissertação para obtenção

Leia mais

Mecanismos de Recuperação

Mecanismos de Recuperação Mecanismos de Recuperação Banco de Dados: Teoria e Prática André Santanchè/Luiz Celso Gomes Jr Instituto de Computação UNICAMP Setembro 2013 Picture by Ben Collins [http://www.flickr.com/photos/graylight/]

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 6 - ALGORÍTIMOS PARALELOS MPI - Parallel Virtual Machine e PVM - Parallel Virtual Machine 1. INTRODUÇÃO Inicialmente é necessário conceber alguns conceitos para entendimento dos algoritmos paralelos:

Leia mais

CONTROLE DE CONCORRÊNCIA EM BANCO DE DADOS: Estudo de Caso Microsoft SQL Server 2008

CONTROLE DE CONCORRÊNCIA EM BANCO DE DADOS: Estudo de Caso Microsoft SQL Server 2008 CONTROLE DE CONCORRÊNCIA EM BANCO DE DADOS: Estudo de Caso Microsoft SQL Server 2008 GERALDA SILVIA DE VASCONCELOS JARDIM 1 IREMAR NUNES DE LIMA 2 Resumo: Este artigo descreve a importância do mecanismo

Leia mais

Hugo Pedro Proença, 2007

Hugo Pedro Proença, 2007 Stored Procedures À medida que a complexidade dos sistemas aumenta, torna-se cada vez mais difícil a tarefa de integrar o SQL com as aplicações cliente. Além disto, é necessário que todas as aplicações

Leia mais

LEIC/LERC 2012/13, 1º

LEIC/LERC 2012/13, 1º Número: Nome: Página 1 de 10 LEIC/LERC 2012/13, 1º Exame de Sistemas Distribuídos, 5 de Junho de 2013 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 2h30m Grupo

Leia mais

Sistemas Operativos: Introdução. February 22, 2011

Sistemas Operativos: Introdução. February 22, 2011 Sistemas Operativos: Introdução February 22, 2011 Sumário Introdução aos Sistemas Operativos Organização de Computadores Sistema Operativo Abstracções Oferecidas por um SO Serviços dum SO Interfaces dum

Leia mais

Web Technologies. Tópicos da apresentação

Web Technologies. Tópicos da apresentação Web Technologies Tecnologias de Middleware 2004/2005 Hugo Simões hsimoes@di.fc.ul.pt 1 A Web Tópicos da apresentação Tecnologias Web para suporte a clientes remotos (Applets,CGI,Servlets) Servidores Aplicacionais

Leia mais

ENHANCED SERVER FAULT- TOLERANCE FOR IMPROVED USER EXPERIENCE. André Esteves nº3412 David Monteiro

ENHANCED SERVER FAULT- TOLERANCE FOR IMPROVED USER EXPERIENCE. André Esteves nº3412 David Monteiro ENHANCED SERVER FAULT- TOLERANCE FOR IMPROVED USER EXPERIENCE André Esteves nº3412 David Monteiro INTRODUÇÃO É proposto uma arquitectura de servidor Web dividida que tolera perfeitamente tanto falhas na

Leia mais

BD Oracle. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04

BD Oracle. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04 BD Oracle SGBD Oracle Licenciatura em Engenharia Informática e Computação Bases de Dados 2003/04 BD Oracle Introdução aos SGBD Base de Dados Colecção de dados que descrevem alguma realidade Sistema de

Leia mais

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2012 / 2013. Gestor de Processos

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2012 / 2013. Gestor de Processos Gestor de Processos Núcleo do Sistema Operativo Sistemas Operativos 2012 / 2013 Gestor de Processos Entidade do núcleo responsável por suportar a execução dos processos Gestão das Interrupções Multiplexagem

Leia mais

Departamento de Engenharia Informática Engenharia de Software, Sistemas Distribuídos. Requisitos para a 3ª entrega do projecto.

Departamento de Engenharia Informática Engenharia de Software, Sistemas Distribuídos. Requisitos para a 3ª entrega do projecto. Departamento de Engenharia Informática Engenharia de Software, Sistemas Distribuídos Requisitos para a 3ª entrega do projecto Loja Virtual 5 de Maio de 2008 Índice Índice...2 1 Sumário...3 2 Requisitos...3

Leia mais

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2011 / 2012. Gestor de Processos

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2011 / 2012. Gestor de Processos Gestor de Processos Núcleo do Sistema Operativo Sistemas Operativos 2011 / 2012 Gestor de Processos Entidade do núcleo responsável por suportar a execução dos processos Gestão das Interrupções Multiplexagem

Leia mais

Bases de Dados. Bibliografia. 1. Parte I Componente Teórica. Pedro Quaresma

Bases de Dados. Bibliografia. 1. Parte I Componente Teórica. Pedro Quaresma Índice Bases de Dados Pedro Quaresma Departamento de Matemática Universidade de Coimbra 2010/2011 1. Parte I Componente Teórica 1.1 Introdução 1.2 Modelo ER 1.3 Modelo Relacional 1.4 SQL 1.5 Integridade

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução Inst tituto de Info ormátic ca - UF FRGS Sistemas Operacionais i Sistemas de arquivos estruturados em log e jornalizados Aula 21 Sistemas de arquivos apresentam questões quanto: Desempenho no

Leia mais

Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI

Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI Fundamentos de Banco de Dados Aula 01 Introdução aos Sistemas de Bancos de Dados Introdução aos Sistemas de BD Objetivo Apresentar

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus Aula 05-06: Modelos de Sistemas Distribuídos (cont.) 2 O modelo peer-to-peer Surgiu no final da década de 1970 Se tornou mundialmente

Leia mais

Gestor de Processos Núcleo do Sistema Operativo

Gestor de Processos Núcleo do Sistema Operativo Alínea do 1º teste 2015/16: Considere a linha: for (i=0;i

Leia mais

Tarefa Orientada 19 Triggers

Tarefa Orientada 19 Triggers Tarefa Orientada 19 Triggers Objectivos: Criar triggers AFTER Criar triggers INSTEAD OF Exemplos de utilização Os triggers são um tipo especial de procedimento que são invocados, ou activados, de forma

Leia mais

Tolerância a Faltas nos Web Services

Tolerância a Faltas nos Web Services Tolerância a Faltas nos Web Services Reliable Messaging Protocol - RMP RMP Tolerar faltas temporárias na comunicação Garantir a semântica da invocação do Web Service independentemente do protocolo de transporte

Leia mais

Componentes de um Sistema de Operação

Componentes de um Sistema de Operação Componentes de um Sistema de Operação Em sistemas modernos é habitual ter-se as seguintes componentes ou módulos: Gestor de processos Gestor da memória principal Gestor da memória secundária Gestor do

Leia mais

Sistema de Arquivos Distribuídos

Sistema de Arquivos Distribuídos Sistema de Arquivos Distribuídos Sistema de Arquivos Distribuídos A interface cliente para um sistema de arquivos é composta por um conjunto de primitivas e operações em arquivos (criar, apagar, ler, escrever)

Leia mais

Tolerância a Faltas. 8/28/2003 José Alves Marques. Sistema Computacional

Tolerância a Faltas. 8/28/2003 José Alves Marques. Sistema Computacional Tolerância a Faltas Sistema Computacional Sistema computacional: Formado por um conjunto de componentes internas Contém um estado interno Está sujeito a um conjunto de entradas, ou estímulos externos Tem

Leia mais

Gestor de Processos. Gestor de Processos

Gestor de Processos. Gestor de Processos Gestor de Processos Núcleo do Sistema Operativo Gestor de Processos Entidade do núcleo responsável por suportar a execução dos processos Gestão das Interrupções Multiplexagem do Processador Despacho efectua

Leia mais

TRANSAÇÃO. Reconstrução ( recovery ) BANCO DE DADOS 2. Tipos de falhas (1) Tipos de falhas (2) Princípios

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

Leia mais

Sistemas Distribuídos Capítulo 1: Introdução. Departamento de Engenharia Informática

Sistemas Distribuídos Capítulo 1: Introdução. Departamento de Engenharia Informática Sistemas Distribuídos Capítulo 1: Introdução Departamento de Engenharia Informática Índice Introdução aos Sistemas Distribuidos Definição de sistema distribuído Razões para a distribuição Evolução tecnológica

Leia mais

Recuperação de Falhas

Recuperação de Falhas Recuperação de Falhas Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Material do Prof. Paulo Pires Recuperação de Falhas Garantia de atomicidade e durabilidade de Transações requer um SGBD tolerante

Leia mais

Transações no Mundo SOA. Luciano Oliveira Solution Consultant

Transações no Mundo SOA. Luciano Oliveira Solution Consultant Transações no Mundo SOA Luciano Oliveira Solution Consultant Agenda Definição Através do Tempo Transações com Bancos Distribuídos Transações em SOA Compensação Coordenador Gerenciado vs. Não-Gerenciado

Leia mais

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science (Tradução e Adaptação Ricardo Anido - IC/Unicamp) Capítulo 04: Comunicação Versão: 20 de março de 2014

Leia mais

Sistemas Distribuídos 59. Sistemas Distribuídos 61. "Receive não-bloqueante:

Sistemas Distribuídos 59. Sistemas Distribuídos 61. Receive não-bloqueante: Comunicação entre processos! Memória Compartilhada: " os processo compartilham variáveis e trocam informações através do uso dessas variáveis compartilhadas COMUNICAÇÃO ENTRE PROCESSOS P1 Área Compartilhda!

Leia mais

Processos. Estados principais de um Processo: Contexto de um Processo. Nível de um Processo. http://www.dei.isep.ipp.pt/~orlando/so2/processos.

Processos. Estados principais de um Processo: Contexto de um Processo. Nível de um Processo. http://www.dei.isep.ipp.pt/~orlando/so2/processos. Página 1 de 5 Processos Consiste num método de descrição das actividades de um sistema operativo; Todo o software incluído no sistema operativo é organizado num grupo de programas executáveis. Cada um

Leia mais

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds

Leia mais

LEIC/LERC 2012/13 2º Teste de Sistemas Operativos 15/Janeiro/2013

LEIC/LERC 2012/13 2º Teste de Sistemas Operativos 15/Janeiro/2013 Número: Nome: LEIC/LERC 2012/13 2º Teste de Sistemas Operativos 15/Janeiro/2013 Identifique todas as folhas. Responda no enunciado, apenas no espaço fornecido. Justifique todas as respostas. Duração: 1h30m

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos (Re)Introdução 1 Organização Definição Características essenciais dos sistemas distribuídos Desafios principais 2 Definição Um sistema distribuído é... um conjunto de componentes

Leia mais

Processos. Paulo Sérgio Almeida 2005/2006. Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho

Processos. Paulo Sérgio Almeida 2005/2006. Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2005/2006 Conceito de processo Operações sobre processos Conceito de processo Conceito de processo

Leia mais

BI: Um estudo de Oracle MÉLODY BALLOUARD (MAMB)

BI: Um estudo de Oracle MÉLODY BALLOUARD (MAMB) BI: Um estudo de Oracle MÉLODY BALLOUARD (MAMB) Roteiro Introdução Motivação Objetivos Historico Conceitos Arquitetura Estado da arte Exemplos Referências Introdução Quantidade infinita de dados Ferramentas

Leia mais

Roteiro. Sistemas Distribuídos. Sistemas de Arquivos Distribuídos. Sistema de arquivos distribuídos

Roteiro. Sistemas Distribuídos. Sistemas de Arquivos Distribuídos. Sistema de arquivos distribuídos Sistemas Distribuídos Sistemas de Arquivos Distribuídos Roteiro Sistema de arquivos distribuídos Requisitos Arquivos e diretórios Compartilhamento Cache Replicação Estudo de caso: NFS e AFS Sistemas Distribuídos

Leia mais

Desenvolvimento Cliente-Servidor 1

Desenvolvimento Cliente-Servidor 1 Desenvolvimento Cliente- 1 Ambiienttes de Desenvollviimentto Avançados Engenharia Informática Instituto Superior de Engenharia do Porto Alexandre Bragança 1998/99 Ambientes de Desenvolvimento Avançados

Leia mais

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs 1 Bancos de Dados - Introdução Melissa Lemos melissa@inf.puc-rio.br Tópicos Evolução dos Sistemas de Informação Esquemas Modelos Conceitual Lógico Características de SGBDs 2 Evolução tempo Programas e

Leia mais

Módulo 4: Processos. Conceito de Processo. Escalonamento de processos Operações sobre processos Processos cooperantes Comunicação entre processos

Módulo 4: Processos. Conceito de Processo. Escalonamento de processos Operações sobre processos Processos cooperantes Comunicação entre processos Módulo 4: Processos Conceito de Processo Escalonamento de processos Operações sobre processos Processos cooperantes Comunicação entre processos 4.1 Conceito de Processo Um Sistema Operacional executa uma

Leia mais