280 likes | 351 Views
Prof. Maria Beatriz Toledo. Lucien Valeska Pereira Fernandes (ra995342). PRO-MOTION : GERENCIAMENTE DE TRANSAÇÕES MÓVEIS. Roteiro. Introdução Objetivo Pro-Motion Compacts Compacts para suportar CC baseado em semântica Infra-Estrutura Conclusões - Vantagens. Introdução.
E N D
Prof. Maria Beatriz Toledo Lucien Valeska Pereira Fernandes (ra995342) PRO-MOTION : GERENCIAMENTE DE TRANSAÇÕES MÓVEIS
Roteiro • Introdução • Objetivo • Pro-Motion • Compacts • Compacts para suportar CC baseado em semântica • Infra-Estrutura • Conclusões - Vantagens
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
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
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
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)
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
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
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
Compacts • são representados como objetos que encapsulam MÉTODOS COMUNS MÉTODOS ESPECÍFICOS REGRAS CONSISTÊNCIA DADO OBRIGAÇÕES INFORMAÇÃO DE ESTADO
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
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
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 MHmudou • dispatch - processa operações no compact emitidas portransaçõesexecutando no host móvel • commit - faz com operações de uma dada transação sejampermanentes no bdados • abort - abandona alterações feita para o dado do compactpor umadada transação
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
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
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
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)
Pro-Motion - infra-estrutura Servidor Host Móvel MSS App App BD Compact agent Mobility manager Compact manager DMBMS Compact registry Class library Compact store log Rede Móvel Rede Fixa Arquitetura do Sistema PRO-MOTION
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
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)
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
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
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
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
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
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
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
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