Agenda Bancos de Dados Móveis Acadêmicas: Anete Terezinha Trasel Denise Veronez Introdução Computação Móvel Avanços revolucionários nas tecnologias de hardware e de rede possibilitaram a evolução dos computadores portáteis; A computação móvel traz consigo novas classes de aplicações e vários novos desafios tecnológicos. Computação Móvel Introdução Computação Móvel Banco de Dados Móveis (BDM) Projetos de BDM SGBD Móveis Conclusão Referências Bibliográficas A computação móvel traz um novo paradigma computacional da tecnologia de rede sem fio e dos sistemas distribuídos; Envolve elementos como hardware, dados, aplicações e usuários que têm a capacidade de se moverem para diferentes localizações; Computação Móvel Desafios do Ambiente Móvel Desafios do Ambiente Móvel Portabilidade: para um computador portável deve-se levar em conta uma serie de propriedades, para garantir uma longa vida útil a bateria. Energia; Riscos de perda e extravio de dados; Interface c/ usuário limitada; Capacidade de armazenamento em disco; Comunicação: Redes sem fio se comunicam através de sinais de ondas de rádio, através de satélites, microondas ou pulsos de luz infravermelha, variando bastante a área de alcance. Alta taxa de desconexão; Alta variedade de largura de banda; Redes heterogêneas; Riscos de segurança; 1 Computação Móvel Desafios do Ambiente Móvel Mobilidade: A capacidade de mudar de localidade enquanto ainda conectado à rede, aumenta a volatilidade da informação. Handoff :é a capacidade de uma rede de dar suporte dinâmico à migração de terminais móveis entre suas células. A unidade móvel (carro) viaja de uma célula para a outra, ainda mantendo a conexão, graças ao processo de handoff Computação Móvel Modelos de Comunicação Móvel Migração de endereço; Informação dependente da localidade; Migração de localidade; Computação Móvel Computação Móvel O planejamento de modelos apropriados para aplicações estruturadas que envolvem elementos sem fio é uma questão fundamental no desenvolvimento do software para a computação móvel. Adaptação:A capacidade de ajuste e a possibilidade de produzir resultados apesar de condições adversas; Operação desconectada: Devido à natureza da comunicação móvel sem fio, muitos fatores afetam a confiabilidade e a qualidade das conexões; Computação Móvel Arquitetura de computação móvel Figura: Arquitetura de computação móvel (Adaptado de Côrtes e Lifschitz, 2002). Computação Móvel Modelo Cliente/Servidor Na computação móvel, o host móvel atua como um cliente requisitando serviços dos servidores localizados na rede fixa. Temos alguns modelos: Cliente/Agente-Servidor/Servidor; Cliente/Agente-Cliente/Servidor; Cliente/Agente-Agente/Servidor. Figura: Modelo Cliente/Servidor Convencional 2 Computação Móvel Modelo de Agentes Móveis Agentes Moveis são processos enviados de um computador fonte para realizar uma tarefa específica em outro computador; Se integra a um ambiente de execução de agentes, se transportam para outro cliente ou servidor, criam novos agentes; Se utilizam de métodos assíncronos para buscar informações, suportam desconexões, redes lentas e equipamentos com pouco recurso. Banco de Dados Móveis(BDM) Gerência de Dados num ambiente da Computação Móvel A computação móvel pode ser considerada uma variação da computação distribuída; Os dados podem estar replicados totalmente ou parcialmente; A responsabilidade do gerenciamento dos dados é compartilhada entre as unidades móveis e as estações base . Banco de Dados Móveis(BDM) O sistema de banco de dados móvel é aquele no qual o acesso à base de dados é realizado através de uma ligação sem fio. As principais características: Banco de Dados Móveis(BDM) Gerência de Dados num ambiente da Computação Móvel Muitas das questões de gerenciamento de dados distribuídos também são aplicados ao BDM: Banco de Dados Móveis(BDM) Replicação de dados e sincronização Vários Bancos Interligados; Acesso a um Computador Móvel; Papel Cliente ou Servidor; Autônomos, distribuídos e heterogêneos. Distribuição de dados e replicação; Modelos de transação; Processamento de consultas; Recuperação e tolerância a falha; Projeto de BDM; Serviços baseados na localização; Divisão de trabalho; Segurança; Banco de Dados Móveis(BDM) Replicação de dados e sincronização Replicação: é o processo pelo qual um arquivo ou grupo de arquivos é copiado de seu local original para outras máquinas dentro de um sistema distribuído; Sincronização é o processo pelo qual os dados distribuídos são mantidos atualizados, de forma que os usuários em cada local tenham certeza de que estão vendo a versão mais recente do arquivo Figura: As bases remotas possuem réplicas dos dados da base consolidada 3 Banco de Dados Móveis(BDM) Banco de Dados Móveis(BDM) Caching e Difusão de dados As estratégias de envio de mensagens por difusão. O caching e a difusão são dois dos tipos de paradigmas de acesso aos dados móveis. Ambos visam aumentar a disponibilidade de dados ao usuário móvel que se encontra numa base remota; Figura: Difusão de dados Gerenciamento de localidade Gerenciamento de localidade Usuários que usam aparelhos sem fio podem se movimentar de um local para o outro da rede; Deve-se manter informações atuais do posicionamento destes objetos em locais específicos da rede; Gerenciamento de localidade envolve duas operações: Busca Vantagem: Desvantagem: Busca; Atualização. Uma transação é uma unidade lógica de processamento de banco de dados que inclui uma ou mais operações de acesso à base. Uma transação móvel é uma transação distribuída, onde alguma parte da computação é executada no host móvel e outra parte em um host fixo. A informação atualizada, reduz o tempo de uma consulta na unidade móvel, pois sua localização é imediata. Desvantagem: custo da busca do objeto que tem que ser feita globalmente na rede. Atualização Vantagem: Transações Nenhuma informação é armazenada na rede, eliminando o custo de atualização. muitas atualizações são necessárias. Transações Problemas com transações móveis: transações longas; transações móveis envolvem sites que não são continuamente conectados ao resto da rede; a computação móvel é mais propensa a erros; a mobilidade resulta em transações que acessam sistemas de informações heterogêneas; localização dos usuários mudam constantemente. 4 Transações Modelos de transações móveis: Transação Kangaroo: inclui movimento em sua estratégia de execução; Reporting e co-transação: podem ser executadas tanto na estação base como na unidade móvel; Clustering: uma transação móvel é decomposta em um conjunto de transações fracas e completas; Semantics Based: organiza os objetos para dividir grandes e complexos objetos em pequenos fragmentos MDSTPM (Multidatabase Transaction Processing Manager): Cada componente do sistema de banco de dados é responsável pelo gerenciamento das transações locais. Processamento de Consultas Vários fatores são responsáveis pela posição do usuário após a consulta: Velocidade; Aceleração; Tipo de movimento, como uniforme, uniformemente variado; Direção; Sentido; Trajetória; Tempo de processamento de consulta, demora na transmissão de dados, desconexões ou quedas de sinal. Recuperação de falhas Processamento de Consultas Neves e Fuchs (1996) propõem um tipo de protocolo com características especiais para ambientes móveis: Este protocolo armazena o estado global consistente da aplicação sem troca de mensagens; Os processos de checkpoint podem ser armazenados no servidor ou localmente nos hosts; Durante a execução da aplicação, o protocolo mantém o estado global: em um local fixo para recuperar falhas permanentes (falhas de hardware); e em unidades móveis para recuperar falhas temporárias (falhas de software). Para se realizar uma consulta móvel, dependendo do caso, é necessário se ter a localização exata da unidade. diversos fatores contribuem no tempo de resposta do sistema: O tempo de transmissão de dados pode ser alto; A execução da consulta ao banco de dados pode ser demorada; O usuário pode estar desconectado da rede, por vontade própria ou não. Recuperação de falhas Se refere à capacidade que um sistema tem de preservar a consistência do banco de dados após falhas do sistema, de transações ou dos meios de comunicação (Ito, 2001 apud Amado, 2002). Em sistemas distribuídos, a recuperação de falhas é baseada em pontos de recuperação (checkpoints). A unidade móvel deve estar sempre informada sobre em qual célula se encontra e quando o sistema entrará em modo de desconexão. Para uma recuperação correta, o protocolo pode salvar um estado consistente global. Recuperação de falhas Algumas características de um esquema de checkpoint em um ambiente móvel: Localização: É necessário que se localize um dispositivo móvel para depois determinar seu checkpoint; Desconexão: A criação de checkpoints por processos enquanto a unidade móvel está desconectada é possível; Energia: checkpoint tem a função de reduzir o número de acessos possíveis ao servidor; Rede: O protocolo checkpoint deverá se adaptar às características da rede onde está atuando; Falhas: De hardware (gerenciadas por hard checkpoints ) e de software (gerenciadas por soft checkpoints ). 5 Segurança PROJETOS DE GERENCIAMENTO DE DADOS MÓVEIS Na computação móvel, a portabilidade dos dispositivos usados pode levar à perda das unidades; A única forma de prevenir a falta de confiabilidade é o uso de encriptação e de mecanismos que assegurem identificação, autenticação e controle de acesso; Para contornar a falta de poder computacional, as unidades móveis transferem certas tarefas para os servidores. Tabela: Projetos que abordam o gerenciamento de dados móveis. SGBDs MÓVEIS Exemplo de uma consulta ao BD Figura: QBE CLP sendo usado para a localização de nomes em uma agenda (Adaptado de Doze et al., 2003). Tabela: Características de alguns SGBDs Móveis. Aplicações Clínicas Dentárias ou Médicas; Tratamento de doentes no hospital IPC (The Hospitalist Company); Aplicação Comercial; Aplicações para cobertura de desastre (Policíais, Bombeiros e Ambulâncias); Aplicações em Monitoramento de animais. CONCLUSÃO A utilização de um Banco de Dados Móvel permite uma redução nos custos de uma organização, fornecendo aos usuários finais informações mais consistentes. Problemas neste ambiente precisam ser minizados ou resolvidos. Pesquisas para desenvolver novos modelos de transações que possam garantir as operações móveis, mantendo os requisitos básicos dos SGBDs. A tecnologia de Banco de Dados Móveis deve acompanhar a computação sem fio num processo de melhoria contínua. 6 REFERÊNCIAS BIBLIOGRÁFICAS AMADO, Paulo G. F.; 2002. Bancos de Dados Móveis: visão geral, desafios e soluções atuais. CORTÊS, Sérgio da C. e LIFSCHITZ, Sérgio; 2002. Banco de dados para um ambiente de computação móvel. CUNHA, Miguel et. al.; 2001. Mobisnap: Um sistema de Base de Dados para Ambientes Móveis. ELMASRI, Ramez e NAVATHE, Shamkant B.; 2000. Fundamentals of Database Systems. MANGANELLI, Elenice C. e ROMANI, Juliano; 2004. Protocolos De Sincronização De Dados Em Ambientes Wireless: Um Estudo De Caso. Florianópolis. Trabalho de Conclusão de Curso(Ciência da Computação). Universidade Federal de Santa Catarina. ITO, Giani C.; 2001. Bancos de dados móveis: uma análise de soluções propostas para gerenciamento de dados. SILBERCHATZ, Abraham; KORTH, Henry F. e SUDARSHAN, S.; 1999. Sistema de Banco de Dados. Makron Books. 7