1 PRO-MOTION : GERENCIAMENTE DE TRANSAÇÕES MÓVEIS Prof. Maria Beatriz ToledoLucien Valeska...

Post on 17-Apr-2015

104 views 0 download

Transcript of 1 PRO-MOTION : GERENCIAMENTE DE TRANSAÇÕES MÓVEIS Prof. Maria Beatriz ToledoLucien Valeska...

1

PRO-MOTION : GERENCIAMENTE DE TRANSAÇÕES MÓVEIS

Prof. Maria Beatriz Toledo Lucien

Valeska Pereira Fernandes (ra995342)

2

Roteiro• Introdução

• Objetivo

• Pro-Motion

• Compacts

• Compacts para suportar CC baseado em semântica

• Infra-Estrutura

• Conclusões - Vantagens

3

Introdução

• Computação Móvel cada vez mais usada• Rede Móvel

– hosts fixos, hosts móveis e estação suporte móvel

– limitações

– operação desconectada

• Necessidade de métodos de banco dados para o processamento de informação compartilhada – para fornecer consistência de dados

• na presença de falhas

• concorrência

4

Introdução• Métodos ou modelos de processamento de transação que

acomodem– limitações do ambiente móvel

• desconexões frequentes

• comunicação de largura de banda baixa

• capacidade de armazenamento reduzido

– operações em dados compartilhados devem garantir• corretude das transações executados nos hosts móvel e fixo

– aumento de autonomia dos hosts móveis• para reduzir comunicações

• aumentar concorrência entre hosts móveis e fixos

– diminuição de bloqueamento de transações executadas nos hosts móvel e fixo

5

Objetivo• O que se tem :

– Modelos para simplificar o gerenciamento de operações desconectadas

– critérios de corretude para consitência de dados mais fracos do que o de seriabilidade padrão

• Necessidade– importantes aplicações que exigem

• garantia de consistência de dados oferecida pela seriabilidade

• apesar das limitações introduzidas pela mobilidade e portabilidade

6

Pro-Motion : Pro-active Management of Mobile

Transactions• uma nova infra-estrutura de processamento de

transação

• que lida com problemas introduzidos pela desconexão

• e com recursos limitados no ambiente móvel

• (revisaram e estenderam métodos escrow e algumas estratégias de cache)

7

Pro-Motion

• emprega compacts para fornercer suporte a:– replicação dinâmica e técnicas caching melhoradas

• ítens scrowable e ítens não scrowable

• permite a competição de transações executando emMH e SH– compartilhar ítens de dados sem bloqueamento

– mantendo restrições de integridade

– transações executando em um MH desconectado• validar localmente

• incorporar modificações ao BD na reconexão

8

Pro-Motion : Um sistema de processamento de transação móvel

• Características– uso de compacts -

• unidade básica de caching e controle

– explora semântica de objetos -• melhorar autonomia do site

• aumentar concorrência

– sub-sistema de gerenciamento de uma transação• fornece gerenciamento de transação para o MH

• negocia e gerencia compacts

9

Compacts• requisição aceita para cache dos dados com :

– obrigações ( deadline ) , restrições (conjunto de operações permissíveis) e informação de estado ( num acessos ao objeto) e métodos para acessar dados cached

• representa um acordo entre o servidor de Bd e o MH– o servidor

• delega controle do dado ao MH

• não tem preocupação com operações executadas pelas transações individuais no MH

• visualiza atualizações periódicas para um compact ( cada ítem dado manipulado pelas transações móveis )

– o MH concorda:• assume responsabilidade para o dado

• honra o conjunto de condições específicas fornecidas pelo servidor

10

Compacts• são representados como objetos que encapsulam

DADOREGRAS

CONSISTÊNCIAOBRIGAÇÕES

INFORMAÇÃO DE ESTADO

MÉTODOS

ESPECÍFICOS

MÉTODOS COMUNS

11

Compacts - obtenção• gerenciados pelos servidor de Bd e MH • host móvel precisa de dados

– envia requisição ao servidor para o dado

– se dado disponível• servidor de Bd cria um compact e o transmite ao MH

• fornecendo o dado e métodos

– recebe o compact

– registra em um compact registry

• requisição sob medida– transmite apenar componentes desatualizadas ou faltantes

– evita transmissão de todos métodos• já estão disponiveis no host móvel

• tarefa muito cara

12

Compacts• renegociação

– qdo as necessidades do host móvel ou servidor mudam

– redistribuição de recursos – retorna ao servidor de Bd

• host móvel não precisa mais dos recursos

• apagado do armazenamento local

• os compacts tem uma interface comum– utilizada pelo agent compact para gerenciar

compacts listados no compact registry

13

Compacts - gerenciamento

• métodos básicos - interface comum– inquire - agent compact obtém estado corrente do compact – notify - compact recebe notificação de que o estado do MH

mudou

– dispatch - processa operações no compact emitidas por transações executando no host móvel

– commit - faz com operações de uma dada transação sejam permanentes no bdados

– abort - abandona alterações feita para o dado do compact por uma dada transação

14

Uso de compacts - suporte controle concorrência baseado em semânticas• por que usar semântica de objetos ?

– fornece granularidade mais fina de caching

– fornece controle de concorrência

– permite manipulação assíncrona dos objetos cached

– permite validação local de transações móveis

• visa melhorar o suporte de operação desconectada• suporte à consistência de dados estrita - seriabilidade

– Ex :ítem escrow e fragmentável

15

CC semântico - Idéia Geral • dividir objetos complexos e grande

– pequenos fragmentos do mesmo tipo

– explorando organização dos objetos

• divisão apropriada– host móvel coloca no cache uma partição do dado ( um ou +

fragmentos)

– minimizando as exigências de armazenamento no host móvel

• fragmentos– unidade de reconciliação de atualizações - unidade

consistência

• cópia mestre do dados fragmentados– reside num servidor de bdados

16

CC semântico - funcionamento• host móveis

– especificam a granularidade do dado a ser cached

– por especificar o tamanho exigido da partição do dado na requisição do compact

• partição do dado– removida da cópia mestre

– empacotada num compact e transmitida ao MH

– somente acessível pelas transações no MH

• parte do dado restante– disponível aos outros MH’s como compacts posteriores

17

CC semântico - funcionamento• suporte a validação local de transação executando no

MH por– reter os efeitos de operações da transação em cada fragmento

quando os fragmento são unidos

• manutenção consistência no objeto inteiro– é mantida por satisfazer restrições no fragmento através das

condições de consistência nos métodos do compact

– condições de consistência devem incluir• operações que são permitidas

• restrições nos valores entrada

• condições no estado do objeto

• (exemplo do artigo2)

18

Pro-Motion - infra-estrutura

Compact manager

Compact store

DMBMS

BDApp App

Compact agent

Compact registry

Class library

log

Mobility manager

Host Móvel ServidorMSS

Arquitetura do Sistema PRO-MOTION

Rede Móvel Rede Fixa

19

Pro-Motion - infra-estrutura• compact manager

– age como um front-end para o servidor de bando de dados

– pode executar em host independente

– ou no mesmo host que o servidor de banco de dados

• mobility manager– ajuda a gerenciar o fluxo de atualizações e dados entre os

outros componentes do sistema

– tem uma regra ativa no processamento de compacts entre o compact agent e o compact manager para melhorar desempenho do sistema

– ele funciona a favor do compact agent quando recebe uma atualização, para completar a entrega da mensagem de atualização

20

Pro-Motion - infra-estrutura• mobility manager

– no caso de desconexão• a atualização é pode ser armazenada no compact manager

• e o conhecimento armazenado pelo MM e processado posteriormente

• qdo o host móvel se reconecta

– mantém tabelas de mobilidade ( mobility tables)• em que cada bloco de controle móvel (MCB) contém

– localização

– informação de acesso

– para um único host móvel

– host móvel se move• o MM usa informação do MCB

• para facilitar o handoff para um novo MSS (MM)

21

Pro-Motion - infra-estrutura• compact agent

– responsável por processar requisições a favor de transações que estão executando no host móvel

– é comparado ao daemon no CODA por ser responsável pelo gerenciamento do cache

– manipula desconexões e gerencia o armazenamento no MH

– interage com usuários e aplicações para manter uma lista de ítens que são canditados a caching

– envolvido de forma ativa no processamento da transação no MH

– agindo como gerenciador de transações que estão executando no host móvel

– responsável pelo controle de concorrência, logging e recuperação

22

Pro-Motion : transações • utiliza o modelo de nested-split transactions para

– fornecer visibiliadade local

– atualizações incrementais no servidor de banco de dados

– sem comprometer consistência e recuperação

• o sub-sistema móvel como um todo– transação de longa duração que executa para o servidor de

banco de dados com subtransações executando para cada MH

• cada subtransação no host móvel– é raiz de outras nested-split transactions

• validação da estrutura das subárvores– dependente das semânticas de validação

– que são impostas pelo processamento de validação no MH

23

Pro-Motion : transações• na reconexão

– o host móvel separa transações validadas localmente das não validadas

– envia ao compact manager que• cria uma spli transaction para este grupo

• valida esta split transaction no banco de dados

• os updates ficam visíveis para todas transações ( host fixos e móveis)

• que ainda não foram validadas no servidor de banco de dados

24

Pro-Motion : processamento de transação

• o processamento é dado por quatro atividades executadas pelo compact agent– hoarding

• o host móvel está conectado na rede

• compact manager armazena compacts, preparação para uma desconexão eventual

– conectado• host móvel conectado a rede

• compact manager está processando transações

25

Pro-Motion : processamento de transação

– desconectado

• o host móvel está desconectado na rede

• compact agent processa transações localmente

• mantém um event log usado– gerenciar processamento de transação

– recuperação

– resincronização

– resincronização• host móvel se reconecta a rede

• compact agent reconcilia updates validados

• na fase desconectado ao banco de dados apropriado

26

Conclusão• Vantagens

– o uso de compacts • elimina a necessidade de escrita de códigos que podem nunca ser

usados - por se ter métodos de acesso com dados encapsulados

• melhora escalabilidade e reduz tráfego de mensagens - por se ter múltiplos updates em uma única mensagem

• fornecem o meio para se construir sistema adaptável para o gerenciamento de transções móveis

– por incluir código para acesso compartilhado

– resposta dinâmica às mudanças no ambiente móvel

• fornecem o meio para se construir sistea flexível para o gerenciamento de transções móveis

– vários esquemas de replicação dinâmica

– variedade de restrições de integridade

27

Conclusão• Vantagens

– uso de compacts• determina critério de corretude, granularidade e determinação de

conflito para cada tipo de dado

• uso mais eficiente da capacidade de armazenamento de dado no HM

– o uso dos componentes da arquitetura• fornece um tipo de infra-estrutura funcional por permitir

– divisão de responsabilidade no processamento e validação de transações entre a estação suporte e o host móvel

– reduzindo a dependência de comunicações com o servidor de banco de dados

28

Conclusão• Pro-Motion

– pode implementar múltiplos esquemas de gerenciamento de dados móveis

• múltiplos compacts podem ser definidos para um único tipo de dado

• empregando vários critérios de corretude

• suportando diferentes graus de isolação

• diferentes estratégias de alocação e privilégios de acesso

• estratégias de renegociação

– a consistência está focada no dado e não na aplicação

– permite uma melhora no processamento de transação pelos hosts móveis desconectados

– e não prejudica acesso por transações executadas nos hosts fixos e outros móveis