BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador...
Transcript of BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador...
![Page 1: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/1.jpg)
05/06/11
1
Transações Móveis
Murilo Raphael Lira Ricardo Salomão
Roteiro
• Ambiente Móvel • Arquitetura • Transação Móvel • Processamento de Transação • Modelos de Transações
![Page 2: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/2.jpg)
05/06/11
2
Ambiente Móvel • Possui elementos móveis e estáticos; ▫ Um host móvel é um computador móvel que é
capaz de se conectar na rede fixa via wireless;
▫ Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio;
Ambiente Móvel
• Uma estação base é um dispositivo ligado à rede cabeada e capaz de se conectar a hosts móveis através de uma interface wireless; ▫ Age como uma interface entre os computadores
fixos (rede cabeada) e os dispositivos móveis (rede wireless); ▫ Estações bases geralmente usam redes wireless de
celular;
![Page 3: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/3.jpg)
05/06/11
3
Ambiente Móvel
• O modelo referência de um ambiente de banco de dados móvel consiste em 3 camadas: ▫ Source system; ▫ Data access agent; ▫ Mobile transaction;
Ambiente de banco de dados móveis
• Source system: ▫ Representa uma coleção de sistemas que oferecem
informação de serviços para usuários móveis;
![Page 4: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/4.jpg)
05/06/11
4
Ambiente de banco de dados móveis
• Data Access Agent (DAA): ▫ Camada por onde os dados são acessados em
transações móveis. ▫ Existe um DAA para cada estação base; ▫ Um DAA pega a requisição do usuário e encaminha
para a estação base específica ou para o host fixo que possui o dado ou informação necessária; ▫ Quando o dispositivo móvel pula para outra estação
base (hand off) então o DAA da nova estação recebe a transação móvel da antiga estação base.
Ambiente de banco de dados móveis
• Mobile Transaction: ▫ Representa a unidade básica da computação em
ambientes móveis; ▫ É identificada pela coleção de estações bases em
que ocorreram os saltos; ▫ Esses sites não s
![Page 5: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/5.jpg)
05/06/11
5
Arquitetura Móvel
Transação Móvel
“Uma transação móvel é uma transação distribuída onde parte do processamento ocorre
em um host móvel e outra em um host fixo.”
![Page 6: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/6.jpg)
05/06/11
6
Coordenador
• Características: ▫ Comunicação ▫ Disponibilidade ▫ Fonte de energia contínua ▫ Espaço de armazenamento
Coordenador
• Host móvel? ▫ Conectividade e disponibilidade ▫ Capacidade de armazenamento ▫ Fornecimento de energia
• Servidores de dados? Host Fixo? ▫ Conectividade
• Estação Base!
![Page 7: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/7.jpg)
05/06/11
7
Processamento de Transações
• Uma transação pode ser iniciada: ▫ pelo servidor de banco de dados � 1 cenário ▫ pelo host móvel � 3 cenários
Processamento de Transações • Quanto à execução: ▫ Inteiramente no host móvel � Cópia dos dados dos servidores de BD � Atualização nos servidores ▫ Dividir a transação em subtransações
• Quanto ao movimento: ▫ sem mobilidade; ▫ com mobilidade; ▫ com mobilidade e processamento distribuído.
![Page 8: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/8.jpg)
05/06/11
8
Processamento de Transações
• Mudança do coordenador: ▫ Método Estático � Coordenador não muda � Problema: � Comunicação
▫ Método Dinâmico � Coordenador muda quando há hand-off � Informar novo coordenador aos servidores � Problema: � Atualização do coordenador
Método Dinâmico
• Esquema Residencial ▫ Limite de tempo para atualizar o coordenador � Congestionamento de tráfego; � Período do dia;
• Migração não adjacente ▫ Mudança para célula não adjacente
![Page 9: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/9.jpg)
05/06/11
9
Consistência
• Impossibilidade de seguir o modelo ACID em BD móveis ▫ Mobilidade (hand-off); ▫ Dependência de localização.
Kangaroo Transactions
• As transações globais serviram como a base sobre a qual as transações móveis foram definidas.
• Transações globais não lidam com o salto entre estações bases.
• Baseado na propriedade de salto que ocorre nas transações móveis foi criado o modelo Kangaroo Transaction.
![Page 10: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/10.jpg)
05/06/11
10
Kangaroo Model
Arquitetura Kangaroo
Unidades Móveis Unidades Fixas
Submissão das transações
Gerenciamento de transação
móvel Log
Sistema Global de Banco de
Dados
SGBD
BD
SGBD
BD
ACID
Data Access Agent
![Page 11: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/11.jpg)
05/06/11
11
Funcionamento
TJ1
LT 1,1 GT 1,1 LT1,2
LT 1,1,1
LT 1,1,2
LT 1,1,3
KT
Unidades Móveis Unidades Fixas
TJ2
LT 2,1 LT2,2
Base Station
Hand-off
Kangaroo Transactions
• Existem dois modos de execução diferentes em Kangaroo Transactions: ▫ Compensating Mode; ▫ Split Mode;
![Page 12: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/12.jpg)
05/06/11
12
Kangaroo Transactions
• Compensating Mode: ▫ A falha de qualquer JT faz com que a JT corrente e
todas as anteriores e posteriores sejam desfeitas; ▫ Os commits de JT anteriores terão de ser
desfeitos; ▫ As operações nesse modo necessitam de
informações para a criação de transações de compensação; ▫ São criadas novas operações para desfazer todas
as operações da Kangaroo Transaction.
Kangaroo Transactions
• Split Mode:
▫ Quando ocorre falha nenhuma nova transação é requerida como parte da KT; ▫ A decisão de commit ou abort da execução
corrente é deixada a cargo do SGBD; ▫ JT consolidados não serão desfeitos por operações
adicionais;
![Page 13: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/13.jpg)
05/06/11
13
Kangaroo Transaction
• Movimento e Desconexão: ▫ O Data Access Agent (DAA) rastreia o movimento do host
móvel, mantendo uma lista encadeada de todas as estações base que foram coordenadores da KT.
▫ Esta lista será utilizada no caso de abort em cascata.
▫ A KT acrescenta uma nova camada à arquitetura multi-database para gerenciar transações solicitadas pelo MH.
▫ A coordenação é distribuída em todos as estações base que foram visitadas pelo MH.
Kangaroo Transaction
• Movimento e Desconexão:
▫ Reduz o custo de comunicação durante a execução porque a transação é sempre controlada pela estação base em que o mobile host está conectado.
▫ Em caso de abort em cascata, a comunicação aumenta
consideravelmente, pois, a estação base controladora deve encaminhar abort a todos os as estações bases na lista
![Page 14: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/14.jpg)
05/06/11
14
Modelo Team Transaction • Modelo para redes ad hoc; • MHs agindo colaborativamente na mesma célula • Mobile Support Station -> Bench • Componentes: ▫ Coordenador: host móvel responsável por uma transação ▫ Player: executa subtransações ▫ DAA: interface de acesso aos dados, mantém log de
informações para recuperação
• Problema: ▫ Mobilidade dos hosts players
Como acontece? • O bench aloca transações globais para os hosts coordenadores • Coordenador <- Transação • Players <- Subtransações
Players Coordenador Bench Message Message
![Page 15: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/15.jpg)
05/06/11
15
Bench
• Registro de transações a serem executadas; • Registro de hosts ativos em sua célula; • Armazena os dados consolidados pelos
coordenadores; • Buffer de log de mensagens ▫ Recuperação de falhas
Coordenador • Decompor a transação em subtransações • Manter a dependência entre as subtransações ▫ Totalmente serial ▫ Totalmente paralelo
• Pode ser player de uma outra transação • Lista de players ▫ Total ▫ Consolidados
• Timeout para os player: ▫ Seleciona novo player ▫ Realiza o trabalho
![Page 16: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/16.jpg)
05/06/11
16
Host Móvel
• Realiza o trabalho designado • Troca de mensagens: ▫ Data ▫ Delegate ▫ Split Delegate
• Mensagem de Split Delegate ▫ Escolha de novo player
Recuperação • No host móvel ▫ Rollback local
• No coordenador ▫ Novo player ▫ Rollback no bench
• No bench ▫ Falha do coordenador
� Desfaz resultados do antigo coordenador � Seleciona novo coordenador � Resultado: perda de performance
![Page 17: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/17.jpg)
05/06/11
17
Modelo Two-Tier Replication
• Duas visões da base de dados ▫ Local (Tentative) ▫ Global (Master)
• Dois tipos de transações ▫ Tentative ▫ Base
• Utiliza Cache de dados para tratar de desconexão.
Modelo Two-Tier Replication
• Camada Global ▫ Dados Master ▫ Transações Base � Operam apenas quando há conexão
![Page 18: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/18.jpg)
05/06/11
18
Modelo Two-Tier Replication
• Camada Local ▫ Utiliza uma cache com dados locais ▫ Dados Tentative � Atualizações em modo offline ▫ Transações Tentative � Convertidas em Transações Base quando há
reconexão
Prewrite
• Primeiro executa e confirma uma transação no nível lógico e faz com que seus itens de dados fiquem disponíveis para outras transações;
• A transação final é finalmente confirmada no nível físico somente quando ela satisfaz um grupo de restrições predefinidas.
![Page 19: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/19.jpg)
05/06/11
19
Prewrite
Conlusões
• Vimos no começo da apresentação uma breve explicação sobre ambientes móveis de dados;
• Introduzimos o conceito de Transação móvel e vimos o processamento dela;
• Verificamos que Transações Globais por si só não podem ser utilizadas em ambientes móveis mas seriviram como base para os modelos de transação móvel;
![Page 20: BDDM - Transações Móveisbfl/seminarios_BDDM2011/seminario13.pdf · Um host fixo é um computador fixo conectado diretamente à rede fixa através de um fio; Ambiente Móvel •](https://reader035.fdocument.pub/reader035/viewer/2022071022/5fd6ecfb20afd060d27ece41/html5/thumbnails/20.jpg)
05/06/11
20
Conlusões
• Explicamos alguns dos modelos propostos para transação móvel: Kangaroo Transaction, Team Transaction, Two-Tier Replication e Prewrite.
• Transação móvel é uma área de muito estudo, principalmente em relação aos modelos já que o ambiente móvel não permite que se siga as propriedades ACID como nos banco de dados tradicionais