1 PRO-MOTION : GERENCIAMENTE DE TRANSAÇÕES MÓVEIS Prof. Maria Beatriz ToledoLucien Valeska...
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