74
Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Embed Size (px)

Citation preview

Page 1: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Modelos de Transações para Ambiente de Computação

Móvel

Maria Beatriz F. ToledoTarcísio da Rocha

Instituto de Computação

Universidade Estadual de Campinas

Page 2: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Sumário

1. Introdução2. Transações Tradicionais3. Report e Co-Transactions4. Coda-IOT5. Promotion6. Transações Fracas e Fortes7. MobileTrans8. AMT9. Comparação e Conclusões

Page 3: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Introdução

1. Consistência de dados para aplicações distribuídas – ambiente: máquinas fixas, redes

tradicionais– solução: transações que oferecem

transparência de concorrência e falhas

Page 4: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Introdução

2. Consistência de dados para aplicações distribuídas– ambiente: máquinas móveis, redes

sem fio– problemas a enfrentar: restrições do

dispositivo móvel, do meio de comunicação

Page 5: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Variações na largura de banda.- Conexão Forte

Rede fixaConexãocom fio

Introdução Problemas a enfrentar

Page 6: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Variações na largura de banda.- Conexão Fraca

Rede fixaConexão com redesem fio

Introdução Problemas a enfrentar

Page 7: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Variações na largura de banda.- Desconexão

Rede fixa

Desconectado

Introdução Problemas a enfrentar

Page 8: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Erros na transmissão Alto custo da comunicação

Rede fixaConexãosem fio

Introdução Problemas a enfrentar

Page 9: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Desconexões freqüentes

DesconectadoRede fixa

Introdução Problemas a enfrentar

Page 10: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Escassez de energia do dispositivo móvel. Menor poder computacional

Introdução Problemas a enfrentar

Page 11: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Segurança mais vulnerável.

Rede fixa

Intruso

Introdução Problemas a enfrentar

Page 12: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

As considerações feitas em relação ao ambiente de rede tradicional raramente são válidas ou apropriadas para o ambiente computacional móvel.

Introdução Problemas a enfrentar

Page 13: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

1. autonomia da máquina móvel: capacidade de adaptação a variações no ambiente– minimizar comunicação

• mecanismos assíncronos• compressão de dados• réplicas em cache local

2. capacidade de adaptação a variações no ambiente– permitir participação da aplicação na adaptação

(melhor desempenho e flexibilidade)

IntroduçãoObjetivos

Page 14: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

IntroduçãoObjetivos

3. revisar propriedades e mecanismos de transações– controle de concorrência baseado em trancas

• bloqueia dados por muito tempo se transação desconectada

– controle de concorrência otimista• número de conflitos aumenta com desconexões

longas

– critérios semânticos• para diminuir conflitos• para facilitar reintegração

Page 15: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Tradicionais

• Origem– aplicações comerciais e financeiras

que utilizam BDs

• Características das aplicações– curta duração– tipos de dados restritos– tipos de operações restritos

Page 16: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Tradicionais

• Problemas que podem ocorrer durante execução:– compartilhamento de dados por aplicações

concorrentes

– ocorrência de falhas que interrompem a execução de aplicações

Page 17: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Tradicionais Objetivos

• oferecer mecanismos para

– controle de concorrência sobre dados

compartilhados

– recuperação de dados

• simplificar o desenvolvimento de

aplicações

• assegurar a obtenção de resultados

corretos

Page 18: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Tradicionais Operações

• operações sobre itens de dado: read, write• operações de controle: begin, commit, abort

(estado consistente 1)

begin

reads/writes

commit

(estado consistente 2)

(estado consistente 1)

begin

reads/writes

abort

(estado consistente 1)

Page 19: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisExecução com concorrência

(estado consistente 1)

begin

reads/writes

begin

reads/writes

commit

reads/writes

commit

(estado consistente 2)

Transação 1

Transação 2

Page 20: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisExecução com falha

(estado consistente 1)

begin

reads/writes

...

(estado consistente 1)

falha

(estado consistente 1)

begin

reads/writes

commit

...

(estado consistente 2)

falha

Page 21: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Tradicionais Propriedades

• atomicidade

• consistência

• isolamento

• durabilidade

Page 22: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisControle de Concorrência

• transações seqüenciais – garantia de consistência

– compromete desempenho

• transações concorrentes– entrelaçamento de operações provoca

interferência

– melhora desempenho

Page 23: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisControle de Concorrência

• Tipos de interferência - exemplos– escrita perdida (lost update)

r1(x) w1(x) w2(x) a1

– leitura inconsistente (dirty read)r1(x) w1(x) r2(x) a1

Page 24: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisControle de Concorrência

• Objetivos– evitar interferências entre transações

concorrentes– produzir históricos corretos

(consistentes)• histórico seqüencial• histórico serializável

– concorrente– equivalente a um histórico sequencial

Page 25: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisControle de Concorrência

• Equivalência– pares de operações conflitantes aparecem

na mesma ordem• r1(x) w2(x), w1(x) r2(x), w1(x) w2(x)

– exemplo• histórico seqüencialH1: r1(x) w1(x) r2(x) w2(y) T1<T2H2: r2(x) w2(y) r1(x) w1(x) T2<T1• histórico serializávelH3: r1(x) r2(x) w2(y) w1(x) T2<T1

Page 26: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisMecanismo para Controle de Concorrência

• escalona operações de forma a produzir históricos corretos

• após receber uma operação pode:– executá-la imediatamente

– atrasá-la bloqueando transação

– rejeitá-la abortando transação

Page 27: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisTrancas (locks)

• tranca é solicitada antes de qualquer operação em um dos modos:– compartilhado para read– exclusivo para write

• tranca é concedida se compatível com trancas já existentes

• se incompatível transação é bloqueada• trancas são liberadas no final da

transação• problema principal: deadlocks

Page 28: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisOrdenação por Timestamp

• cada transação tem um timestamp• cada operação deve ser acompanhada

do TS da transação• cada item de dado tem associado:

• TS de leitura - RTS• TS de escrita - WTS

• Histórico resultante– equivale ao seqüencial ordenado por ordem

de TS

Page 29: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisOrdenação por Timestamp

• OperaçõesTS é o timestamp da operação– leitura

se TS < WTS rejeitasenão executa (RTS= max(RTS, TS)

– escritase TS < RTS ou TS < WTS rejeitasenão executa (WTS=TS)

• Problema principal: número de cancelamentos

Page 30: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisCertificação (Método Otimista)

• uma transação tem 3 fases:– fase de execução

• operações de leitura são executadas sem restrições• operações de escrita são executadas sobre área de

trabalho da transação

– fase de validação• testa conflitos que causem inconsistência

– fase de atualização• se passa na validação, efetiva atualizações

• problemas: números de cancelamentos

Page 31: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisRecuperação de Falhas

• Tipos de falha– falhas de transação– falhas de sistema

• Estados armazenados– estado do sistema antes de a transação

iniciar(necessário quando transação é abortada)

– estado contendo as atualizações da transação

(necessário se transação termina com sucesso)

Page 32: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações TradicionaisRecuperação de Falhas

• estrutura utilizada - log– para guardar histórico da execução das

transações. Inclui:• informação para desfazer e refazer operações

executadas

• informação sobre o estado das transações

• mecanismo de recuperação– operações são desfeitas em caso de falha

– operações são refeitas para transações que terminarem com sucesso

Page 33: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Report e Co-Transactions Chrysanthis

• Objetivos– permitir troca de resultados parciais

entre transações– permitir distribuição da computação

entre máquinas fixas e móveis– flexibilizar atomicidade

Page 34: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Report e Co-Transactions Modelo

• Uma transação móvel é um conjunto de subtransações que podem ser:

1. subtransações atômicas: • compensáveis: para as quais podem ser definidas

transações compensatórias• compensatórias: que desfazem efeitos de

subtransações compensáveis

2. subtransações não compensáveis: resultados são delegados para transação móvel.

Page 35: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Report e Co-Transactions Modelo

3. subtransações report: delega resultados

parciais com transação móvel.

4. subtransações co-transactions: report com

comportamento de co-rotina.

Page 36: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Report e Co-Transactions Propriedades

• isolamento relaxado:– subtransações compensáveis tornam

resultados visíveis no final

– subtransações report compartilham resultados parciais com transação móvel

• atomicidade: efetivação de resultados parciais no final de cada subtransação compensável.

Page 37: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Report e Co-Transactions Propriedades

• vitais/não vitais.

• mobilidade:– transação móvel executa na máquina móvel

– report e co-transactions executam em máquinas fixas mas podem se mover para acompanhar máquina móvel

Page 38: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOT Lu e Satynarayanan

• Objetivos– permitir execução de transações em

máquinas móveis conectadas ou desconectadas

– evitar o bloqueio de arquivos utilizando controle de concorrência otimista

Page 39: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOT Origem

Sistema de arquivos Coda:• interface Unix• replicação de arquivos

– cópia de primeira classe em servidores (máquinas fixas)

– cópia de segunda classe na máquina móvel

• controle de concorrência otimista– escritas no cliente– validação no servidor

Page 40: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOT Propriedades

– atomicidade (por volume)– isolamento– durabilidade condicional– consistência baseada em

seriabilidade

Page 41: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOT

• controle de concorrência local baseado em trancas

• manutenção de log local• no final da transação ou no momento da

reconexão, log é enviado para servidores• servidores utilizam log para validar

transações• estados dos arquivos são propagados do

cliente para servidor se transação for válida

Page 42: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOT Estados das Transações

efetivada em resolução

resolvida

em execução pendente início fim com

partição

sucesso na validação

resolução

fim sem partição fracasso na

validação

Transação Desconectada

TransaçãoConectada

Page 43: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOTMudança de Estados

• quando transação é iniciada passa para estado em execução

• quando termina passa para:– efetivada: se mantém conexões. Estado é

imediatamente propagado.

– pendente: se perde conexões. Libera dados para transações locais criando dependências.

Page 44: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOTMudança de Estados

• na reconexão: determina ordem de

transações pendentes e envia log de uma

em uma.

– Se válida passa para estado efetivada.

– Se inválida passa para estado em resolução.

• quando termina resolução de conflito,

transação passa para estado resolvida.

Page 45: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Coda-IOTResolução de Conflitos

• re-execução automática da transação

• cancelamento automático

• execução de programa para resolver

conflitos

• reparo manual pelo usuário

Page 46: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Promotion Walborn e Chrysanthis

• Objetivos– evitar bloqueio utilizando controle de

concorrência semântico

– aumentar autonomia através de replicação local

• Aspectos principais– encapsulamento de dados em compacts

– transações com vários níveis de consistência

Page 47: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Promotion Estrutura de Compacts

• dados

• métodos específicos

• informação sobre estado

• regras de consistência

• obrigações

• métodos para gerenciamento do compact– inquire, commit, abort

Page 48: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Lease

• métodos específicos– read, modify

• dado• regras de consistência: não tem• obrigações

– prazo

• estado– data da última atualização

Page 49: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Objetos Fragmentáveis I

• Conceito– pode ser dividido em partições menores– partições podem ser armazenadas na

máquina móvel

• Objetivos– fornecer granularidade fina de cache e

controle de concorrência– facilitar integração depois de reconexão– permitir efetivação local de transações

Page 50: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Objetos Fragmentáveis II

• Operações

– split

– merge

• Tipos de fragmentos

– lógicos (escrow)

– físicos (pilhas, filas, conjuntos)

Page 51: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Escrow

• métodos específicos– increase, decrease

• dado (do tipo inteiro)• regras de consistência

– valor máximo e mínimo

• obrigações– prazo

• estado– escrow journal

Page 52: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Pilha I

• operações: push, pop

• itens inseridos por uma transação ficam adjacentes na pilha

• fragmentos: porção contendo dados interdependentes

• fisicamente fragmentáveis

• reordenáveis

Page 53: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Pilha II

CT2 BT2 AT2 CT1 BT1 AT1 Si

• pilha é fragmentada em:

CT1 BT1 AT1 Si

para MH2para MH1

CT2 BT2 AT2

AT2

• T3 em MH1 faz 2 pop’s e termina• T4 em MH2 faz 2 pop’s, push e termina

AT4 AT1

Page 54: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

ProMotionCompact - Pilha III

• após merge:

AT4 AT1 SiAT2

que equivale T1 T4 T2 T3

AT2AT4 AT1

• ou:

Si

que equivale T2 T3 T1 T4

Page 55: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Promotion Transações

• modo: conectado, desconectado– na reconexão, prazos de expiração de compacts

são verificados

• níveis de consistência: 0 (sem garantia),..., 8 (serializável), 9 (seqüencial)

• cada método tem nível e modo de acessso (read/write)

• cada transação tem nível para read e write

Page 56: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Promotion Transações

• cada operação só pode ser executada se seu nível for nível da transação

• transação termina com sucesso se dados lidos têm nível nível dados modificados

Page 57: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

• Objetivos: – lidar com desconexões– oferecer apoio à adaptação a largura de

banda

• Idéias básicas:– agrupamento de dados– consistência dentro do agrupamento ou entre

agrupamento– novas operações weak read/weak write– dois tipos de transações: weak e strict

Transações Fracas/FortesPitoura e Barghava

Page 58: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Fracas/FortesAgrupamentos

• agrupamento de dados relacionados (por localização ou semântica)

• reconfiguração dinâmica de agrupamentos (dispositivo móvel pode sair de agrupamento devido a desconexões ou deslocamento de células)

• replicação no cache do dispositivo móvel (pode se tornar um agrupamento se desconectado)

Page 59: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Fracas/FortesConsistência

• dados dentro de um agrupamento são consistentes

• dados em agrupamentos diferentes podem apresentar um certo grau de inconsistência

• grau de consistência pode variar de acordo com disponibilidade de banda entre agrupamentos (aplicação pode se adaptar)

Page 60: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Fracas/FortesOperações Fracas/Fortes

• weak read/weak write operam sobre dados dentro de um agrupamento

• strict read/strict write operam sobre dados consistentes (read e write padrão)

• strict read só lê dados escritos por strict write

Page 61: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Transações Fracas/FortesEfetivação de Transações

• weak transaction: realiza weak reads e weak writes. – Operam sobre dados locais ao agrupamento

da transação. – Duas efetivações: local ao agrupamento

(dados visíveis para outras weak transactions) e global na reintegração do agrupamento.

• strict transaction: realiza strict reads e strict writes. Efetivação global.

Page 62: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTransSantos, Veiga, Ferreira

• Objetivos– oferecer apoio à adaptação através de

políticas para busca de objetos, armazenamento local de objetos, delegação de objetos, relaxamento de consistência e atomicidade, tratamento de falhas

– permitir extensão com relação a outros atributos não previstos inicialmente

Page 63: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTransConsistência

• Atributo objeto– valores: required, replica, dispensable

• Atributo grau da transação– valores: high, medium, low– high: objetos devem ser buscados de nó seguro.– medium: objetos com atributo de consistência

required são buscados de nó seguro. Os outros podem vir de cache local ou de outros nós.

– low: required de nó seguro, replica de qualquer nó, dispensable não precisam ser alcançados.

Page 64: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTrans Busca de objetos

• Atributo modo– valores: prefetch, ondemand

• Atributo objeto– valores: random, node, randset

Page 65: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTrans Delegação

• o papel de coordenador pode ser

delegado para outros nós

– nó específico

– aleatório dentro de um conjunto

– aleatório

Page 66: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTrans Atomicidade

• Atributo objeto– valores: mandatory, tentative

• Atributo grau– valores: high, low– no grau high todos os objetos (cópia

principal) devem ser atualizados– no grau low só objetos mandatory precisam

ser atualizados. Objetos com atributo tentative podem ser atualizados localmente ou descartadas.

Page 67: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTrans Armazenamento Local

• indica se objeto deve ser armazenado em cache local

Page 68: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

MobileTrans Tratamento de Falha

• Atributos: consistência, busca, delegação, atomicidade, usuário

• valores: abort, retry suspend

Page 69: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Adaptable Mobile Transactions Alvarado et al.

• Objetivos– oferecer apoio à adaptação através da

definição de várias alternativas de execução

• Idéia básica– uma transação adaptável consiste de várias

alternativas (podem ser semanticamente equivalentes)

– a cada alternativa está associado um descritor de ambiente que descreve o estado necessário para executar essa alternativa

Page 70: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Adaptable Mobile Transactions Descritor de Ambiente

• rede– estado da conexão: connected, disconnected– largura de banda: high, medium, low– custo de comunicação: free, cheap, expensive

• dispositivo móvel– disponibilidade de bateria: full, half, low– disponibilidade de cache: full, half, low– disponibilidade de memória persistente: full, half,

low– capacidade de processamento: high, medium, low– tempo estimado de conexão: hh:mm:ss

Page 71: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Adaptable Mobile Transactions Definição

AMT = (T, CT, <EAk>)• T é o conjunto de transações componentes• CT é o conjunto de transações de compensação

• EAk para k 1, é a lista de alternativas onde EAk tem prioridade sobre EAk+1

• EAk = (EDk, EPk) , uma alternativa EAk tem um plano de execução EPk se o ambiente satifaz o descritor associado EDk

– EPk = {(Tki,H)}, Tki T, um plano Epk é um conjunto de pares transação componente e host para sua execução

Page 72: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Adaptable Mobile Transactions Propriedades

• atomicidade semânticaou todas as transações numa alternativa

terminam com sucesso ou todas são abortadas (ou compensadas)

• isolamentotransações que podem ser compensadas

liberam resultados no finaltransações que não podem ser compensadas

esperam efetivação global para liberar resultados

Page 73: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Comparação

MODELO PROPRIEDADES AUTONOMIA

ADAPTAÇÃO

Report I, A

IOT D Réplica local

PROMOTION

C, D Réplica local, itens frag.

Trans. Fracas/Fortes

C, D Réplica local

Níveis de consistência

AMT I, A Alternativas

MobileTrans C, A Reconfiguração

Page 74: Modelos de Transações para Ambiente de Computação Móvel Maria Beatriz F. Toledo Tarcísio da Rocha Instituto de Computação Universidade Estadual de Campinas

Conclusões

• revisão de propriedades e mecanismos do modelo tradicional de transações

• conhecimento sobre ambiente para configurar transação

• notificação sobre variações para reconfigurar transação e permitir melhor adaptação