Title: Transaction Policies for Mobile Network
1Transaction Policies for Mobile Network
Universidade Federal de Santa Catarina Centro
Tecnológico - CTC Departamento de Informática e
Estatística - INE Bancos de Dados Distribuídos
Prof. Dr. Frank Siqueira
guardalben_at_gmail.com
2Dados do artigo
- Nuno Santos, Luís Veiga, Paulo Ferreira
- INESC Instituto de Eng. de Sis. Comp.
- Distributed Systems Group
- Porto Portugal
- 5º IEEE Policies for Dist. Syst. and
Net(POLICY04) - Nuno.santos,luis.veiga.paulo.ferreira_at_inesc.pt
3Estrutura
- Introdução
- Definição do problema
- MobileTrans e sua Arquitetura
- Políticas de Transação
- Avaliação
- Conclusão e Considerações Finais
4Introdução
- Dispositivos Móveis PDAs, e Laptops
- Estes dispositivos são equipados com interfaces
wireless - Permitem a comunicação tanto com redes móveis e
também com estações fixas - Redes móveis são caracterizadas pela mobilidade
ou pela desconexão de um ou mais hosts - Redes Ad-Hoc x Redes móveis com bases fixas
5Definição do problema
- Redes Móveis
- Ambientes dinâmicos e alta interação dos nodos em
topologias arbitrárias - Os nodos podem estar inacessíveis a qualquer
momento - Escassez de memória, tempo da bateria, poder
processamento, dos nodos pertencentes a rede - Necessidade de compartilhamento de informações
entre estações fixas - Maior presença de falhas devido ao alto índice de
desconexões dos nodos da rede
Devido a instabilidade da topologia da rede, o
paradigma de transação é necessário para
assegurar que os dados tenham consistência mesmo
na presença de falhas de desconexão
6Definição do problema
- Sistemas de Transações atuais
- Já promovem mecanismos de distribuição de
transações para nodos móveis - Mas são ineficientes para tratar o problema de
desconexão dos nodos - As propriedades clássicas ACID são muito restrita
para tais cenários móveis
Sistema de Transações Atuais Falham em prover
a necessidade de adaptabilidade para um grande
conjunto de cenários e aplicações.
7MobileTrans
- É um Sistema de transações baseado em objetos
- Trabalha com políticas de especificação
- Declarativa, programação
- Suporta Flexibilidade e adaptabilidade necessária
para redes móveis - Cada nó é capaz de acessar os objetos de qualquer
outro nó
8MobileTrans
- Enquanto o nó fornece os objetos ele trabalha
como servidor - Se o nó faz uma requisição para qualquer outro nó
ele trabalha como cliente - Os objetos podem conter referências em outros
nós, formando Gráfico distribuído de objetos
9MobileTrans
- Os objetos são armazenados no contexto da
transação - As transações são executadas sob um protocolo de
controle de concorrência garantindo a
serialização
- MobileTrans é um middleware que dá
- suporte para desenvolvimento
- e execução das transações.
10MobileTrans
- Propriedades das transações
- Consistência
- É possivel especificar regras de consistência
para usar versões antigas dos objetos, se o nó
não estiver mais acessível. Pode ser tanto para
um objeto ou para o gráfico de objetos - Fetching
- Pode se replicar um objeto antes do início da
transação ou pedir os objetos por demanda depois
que a transação é executada - Delegação
- Quando uma transação está prestes a receber
commit, é possível delegar para outro nó a função
de commit da transação - Atomicidade
- Essa política especifica se a transação pode dar
commit se todos os nós estiverem acessíveis - Caching
- Enquanto é executada a transação é possível
armazenar os objetos em nós cache. Isso é
essencial para garantir disponibilidade durante a
desconexão - Manipulação de Erros
- Responsável por determinar como reagir perante os
erros,
11MobileTrans
- Arquitetura
- Roda sobre MOBIWAN
- MOBIWAN
- É uma evolução do Obiwan, (Que é um middleware
que prove transparência e adaptabilidade para
gráficos de objetos ) - Responsável pela comunicação entre os nodos
móveis - Foi desenvolvido como um web-service, roda sobre
IIS(Internet Information Service) - Compiler gera automaticamente proxies codificados
em C - Implementação
- Foi desenvolvido em .Net / .Net CF
- Usando C como linguagem primária
MOBIWAN dá suporte para replicação de Gráficos
de Objetos
12Modelo de Transação
- Controle de concorrência é baseado em
MVPV(Multi-version Parallel validation)é um
protocolo que garante a serialização dos objetos - O modelo usa um coordenador para coordenar a
execução das transações de um gráfico de objetos
distribuídos e um gerenciador para administrar as
transações que acessam os objetos locais - MVPV garante a consistência dos dados
13Modelo de Transação
- MobileTrans usa uma versão modificada do MVPV de
duas formas - É adaptado para controlar o comportamento de
banco de dados relacional - É baseado em políticas de especificação, isto
provê facilidade de configuração ao comportamento
da transação
14Exemplo de Transação
15Políticas de Transação
- Com MobileTrans é possível especificar o exato
comportamento das transações de acordo com um
conjunto predefinido de parâmetros chamados
atributos - Uma instância só é valida no contexto da
transação ou seja durante o ciclo de vida da
transação - Uma transação é dita configurada quando todos os
seus atributos foram instanciados
16Atributos das Transações
- Atributos
- Consistência
- Fetching
- Delegação
- Atomicidade
- Caching
- Manipulação de Erros
- Hierarquia
- consistency.degree(low)
- caching.read(yes)
17Políticas de Transação
- Desenvolvedor tem toda flexibilidade em aplicar a
especificação da política de transação desejada - Esta especificação pode ser tanto
- declarativa É configurada através de um arquivo
em XML - Programação Permite um alto grau controle em
tempo de execução - Exemplo de como as transações provem
adaptabilidade perante desconexões
18Avaliação
- Benckmark
- Foi executado uma lista de appointments com 1000
elementos com um payload de 64 bytes cada. - O mecanismo de replicação foi configurado para
responder em On-demand e pre-fetched. - Equipamentos
- Um Pentium 4, 2,8Ghz, 512Mb PC
- IPAQ 3360 Pocket PC Bluetooth USB Adapter
19Avaliação
- É mais eficiente quando vários(Mais que 25
objetos) são replicados por tempo - On-demand diminui a latência e minimiza uso de
memória pela aplicação - Melhores resultados são obtidos com maior número
de objetos, há com isso desperdício de memória.
20Conclusão
- Usando políticas de transações o desenvolvedor é
capaz de configurar aspectos do comportamento da
transação - Assim políticas de transações prove um poderoso e
flexível mecanismo de configuração do
comportamento das transações de acordo com a
semântica da aplicação - Para o MobileTrans estão sendo estudadas novas
formas para garantir mais controle de
concorrência, e garantir mais consistência nas
transações
21Considerações Finais
- Críticas
- Legibilidade (Bom)
- Coerência (Bom)
- Ambiente de avaliação(Falho)
- Contribuição
- Criação de uma política de eleição do nó
coordenador, utilizando heurísticas pré
estabelecidas - Melhoria da segurança entre os nós participantes
mais especificadamente em redes AD-HOC.
22Transaction Policies for Mobile Network
Universidade Federal de Santa Catarina Centro
Tecnológico - CTC Departamento de Informática e
Estatística - INE Bancos de Dados Distribuídos
- Referências e artigos correlatos
guardalben_at_gmail.com