34
O problema da desconexão em BD móveis Equipe: Antonio Jaime M. de Almeida Bruno de Brito Leite

O problema da desconexão em BD móveis Equipe: Antonio Jaime M. de Almeida Bruno de Brito Leite

Embed Size (px)

Citation preview

O problema da desconexão em BD

móveisEquipe:

Antonio Jaime M. de AlmeidaBruno de Brito Leite

Roteiro• Definição do Problema• Modelo de Banco de Dados• Tipos de desconexão:

– Basic sign-off– Check-out– Check-out with mobile read– Check-out with system read– Relaxed check-out– Optimistic check-out

• Considerações• Referências

Definição do problema

• Caso 1: Bob – Apresentação de resultados da filial

Definição do problema

• Caso 2: Alice - Time de vendedores

Definição do problema

• Caso 3: John - Migração de animais

Definição do problema

• BD centralizado: cache móvel

• BD distribuído: entidades de primeira classe

Modelo de banco de dados• Todas as entidades são móveis• Rede ad hoc• Totalmente replicado• Controle de concorrência

–Two-Phase Locking

Modelo de banco de dados• Two-Phase Locking

1. Fase de expansão ou crescimento– Uma transação Tx pode obter bloqueios, mas não

pode liberar nenhum bloqueio

2. Fase de retrocesso ou encolhimento– Uma transação Tx pode liberar bloqueios, mas não

pode obter nenhum bloqueio

Modelo de banco de dados

• Protocolo de sincronização Read One Write All (ROWA)

Modelo de banco de dados

• Número de membros–Fixo–Alguns desconectados

• Ausência de servidor centralizado

Modelo de banco de dados

• Sistemas Síncronos: – A transação afeta todos os sites no

mesmo instante• Sistemas Assíncronos:

– A transação será executada localmente– Efeitos sendo incorporados

gradativamente nos demais sites envolvidos

Modelo de banco de dados

• Comunicação epidêmica– Não requer comunicação contínua– Periodicamente os membros trocam informações– As informações se espalham pelos sites

– Curtas conexões, para trocas de mensagem, viabilizando o acesso de usuários móveis

Tipos de desconexão

• Como solucionar os problemas de Bob, Alice e John?

• Impacto da desconexão– Não planejada: falha

– Planejada: impacto da desconexão minimizado

Tipos de desconexão

• Basic sign-off• Check-out• Check-out with mobile read• Check-out with system read• Relaxed check-out• Optimistic check-out

Basic sign-off• Protocolo de desconexão:

i. Escolha do proxyii. Ceder direitos ao proxyiii. Certificar-se que o proxy conhece seu estadoiv. Desconectar

Basic sign-offProtocolo de conexão:

i. Reconectarii. Contatar proxy (ou proxy do proxy)iii. Verificar atualizações iv. Recuperar direitosv. Retornar a operação normal

Basic sign-off

Acesso Conectado Acesso Remoto

Banco de Dados

• Exemplo:

- Bob

Check-out• Objeto bloqueado para um site por vez• Pseudo-Transação: mecanismo de bloqueio existente

• Protocolo de desconexão:i. Executa o protocolo de desconexão descrito anteriormenteii. Inicia pseudo-transação para obtenção de bloqueio de escritaiii. Desconecta se obteve sucesso ou tenta novamente ou obtêm o bloqueio para um subconjunto dos itens

Check-out

• Protocolo de conexãoi. Executa o protocolo de conexão descrito anteriormenteii. Transmite os novos valoresiii. Libera bloqueios

Check-out

Banco de Dados

Acesso Conectado Acesso Remoto

• Exemplo:

- Alice

Check-out with mobile read

Banco de Dados

Acesso Conectado Acesso Remoto

Check-out with mobile read

• Seriação na desconexão• Ordem: t1, t2, t3 e t4

Check-out with mobile read

• Condições de seriação:i. Único site pode modificar o item bloqueadoii. Itens bloqueados não podem ser lidos ou escritos por outros sitesiii. Itens não bloqueados para escrita por pseudo-transação só podem ser lidos pelo site desconectado

Check-out with system read

Banco de Dados

Acesso Conectado Acesso Remoto

Check-out with system read

• Seriação na conexão• Ordem: t2, t1, t3 e t4

Check-out with system read

• Condições de seriaçãoi. Único site pode modificar o item bloqueadoii. Itens bloqueados pela pseudo-transação na desconexão pode ser lidos, mas não escritos por outros sitesiii. Itens não bloqueados para escrita por pseudo-transação não estão acessíveis para o site desconectado

Relaxed check-out

Banco de Dados

Acesso Conectado Acesso Remoto

Relaxed check-out

• Ciclo de dependência: t1, t3 e t5

Relaxed check-out

• Bloqueio especial de navegação: Leitura suja (browse lock)

• Execução não seriada• Grande concorrência• Matriz de compatibilidade

Optimistic check-out

Acesso Conectado Acesso Remoto

Banco de Dados

• Exemplo:

- John

Optimistic check-out

• Acesso a todos os dados: conectado ou não

• Reconciliação de conflitos– Rollback– Regras de conciliação( )

Considerações

• Os tipos de desconexões apresentados visam:– Disponibilizar dados aos usuários em qualquer

lugar;– Permitir uma maior flexibilidade na utilização de

bancos de dados distribuídos;– Utilizar de banco de dados móveis como

entidades de primeira classe• O tipo de desconexão a ser utilizado vai

depender do contexto;

Considerações

• O artigo fornece suas explicações de maneira não clara:– Espalhadas– Repetidas

Referências

• Disconnection Modes for Mobile Databases JOANNE HOLLIDAY, DIVYAKANT AGRAWAL and AMR EL ABBADI, Wireless Networks 8, 391–402, 2002

• Technical Report TRCS00-07: Planned Disconnections for Mobile Databases JOANNE HOLLIDAY, DIVYAKANT AGRAWAL and AMR El ABBADI