820 likes | 958 Views
Bancos de Dados Móveis. A maioria dos slides é traduzida / adaptada de: Vijay Kumar Computer Sc. Telecommunications University of Missouri-Kansas City 5100 Rockhill Road Kansas City, MO 64110, USA kumar@cstp.umkc.edu. Bancos de Dados Móveis. Índice
E N D
Bancos de Dados Móveis A maioria dos slides é traduzida / adaptada de: Vijay Kumar Computer Sc. Telecommunications University of Missouri-Kansas City 5100 Rockhill Road Kansas City, MO 64110, USA kumar@cstp.umkc.edu
Bancos de Dados Móveis Índice • Espaço de Informação Totalmente Conectado • “Personal Communication System” • Sistemas de Computação Móvel • Sistemas de Banco de Dados Móvel • Gerência de Dados • Gerência de Transações
Bancos de Dados Móveis Índice (2) • Sobre um Relatório sobre Problemas Abertos e Direções de Pesquisa em MDS • Sumário e Conclusões
Espaço de Informação Totalmente Conectado (2) • Cada nó do espaço de informação tem alguma capacidade de comunicação • Alguns nós podem processar informação • Alguns nós podem se comunicar através de sinal de voz • Alguns nós podem fazer ambas as coisas
Espaço de Informação Totalmente Conectado (3) O espaço pode ser mantido integrando sistemas de banco de dados, e sistemas com / sem fio (PCS - “Personal Communication Systems” -, Sistemas Celulares, e GSM - “Global System for Mobile Communications”)
PCS (2) • Dois conjuntos distintos de entidades • “Mobile hosts” (MH) – também chamados de clientes móveis • “Fixed hosts” (FH) • Alguns FH são estações de base (“Mobile Support Stations”) • Comunicação com MH via uma interface sem fio • Cada MH se comunica com uma estação de base via um canal sem fio • Célula – área coberta por uma estação de base • Tipicamente, o servidor de banco de dados (BD) reside em um FH via uma interface com fio • Confundiremos BD com FH
PCS (3) Especificidades dos ambientes de computação móvel • Largura de banca de comunicação assimétrica • FH tem mais capacidade de comunicação do que MH • Freqüentes desconexões • MHs não podem se manter conectados à rede todo o tempo • Limitações de energia • MHs usam baterias, basicamente • Economia de energia é um imperativo
PCS (4) Os limitados canais dos MHs devem ser utilizados eficientemente. Isto é feito por Células móveis A área coberta pela rede sem fio é dividida em células Reuso de freqüência A mesma freqüência de rádio é usada para comunicação por mais de uma célula
PCS (6): Células Móveis (2) O tamanho das células depende da capacidade das estações de base MSC: “Mobile Swiching Center” PTSN “Public Switched Network”
PCS (7): “Handoff” Um processo, que permite quebrar a conexão com um BS (“Base Station”) e estabelecer a conexão com outro BS.
PCS (8): “Handoff” (2) O procedimento é completado enquanto o MH (o ônibus) se encontra na “overlap region”
PCS (9): Gerência de Localização Esquema de Dois Passos HLR: “Home Location Register” Um HLR armazena o perfil do usuário e sua localização geográfica – célula corrente VLR: “Visitor Location Register” O VLR de uma célula armazena o perfil do usuário e a localização corrente do usuário que vai visitar a célula
PCS (10): Gerência de Localização (2) MU1 se desloca para MU2 MU (“Mobile Unit”) é sinônimo de MH
PCS (11) Passo 1: Localização O VLR da célula 2 é pesquisado para o perfil de MU2 Se não é encontrado, então o HLR é pesquisado Uma vez MU2 localizado, então a informação é enviada à estação de base da célula 1 A célula 1 estabelece a comunicação
PCS (12) Passo 2: Atualização da localização MU2 se move da célula 1 para a célula 2 A localização de MU2 é mudada e então a nova localização deve ser registrada O HLR é atualizado A entrada para MU2 é removida do VLR da célula 1 e uma nova entrada é incluída VLR da célula 2
Sistemas de Computação Móvel • Computação móvel é associada com mobilidade de usuários, hardware, dados e software em aplicações de computador • Classe especializada de sistemas de computação distribuída em que alguns nós podem mover-se dentro de um espaço físico ou lógico, (des)conectando-se de maneira ad hoc
Sistemas de Banco de Dados Móvel O que é um sistema de banco de dados móvel (MDS: “Mobile Database Systems”)? Um sistema de computação móvel com as seguintes propriedades estruturais e funcionais • Sistema distribuído com conectividade intermitente • O MH é um SGBD “à part entière” • Completa mobilidade espacial • Construído sobre plataforma PCS/GSM • Capacidade de comunicação com / sem fio
MDS (2) O que é uma conectividade móvel? Um modo de conectividade em que um MH e um FH podem se comunicar um com o outro toda vez que isto se fizer necessário. Conectividade intermitente é um caso especial de conectividade móvel
MDS (3) Um modo de conectividade em que somente o MH pode estabelecer comunicação com o FH, sempre que isto for necessário O que é conectividade intermitente?
MDS (4) Objetivos Construir um sistema de processamento de informação verdadeiramente ubíquo, mesmo com as restrições inerentes às arquiteturas sem fio
MDS (5): Arquitetura Cliente-Servidor Application-awareness (collaboration) Application-transparent (No changes to applications) Laissez faire (No system support) Fonte: J. Jing, A. Helal e A. Elmagarmid
MDS (6): Arquitetura Cliente-Servidor (2) Application-transparent Adaptation Applications Mobile File Server DBMS APIs Mobile SGBD APIs DBMS Proxy Mobile Host Fixed Network Adaptado de: J. Jing, A. Helal e A. Elmagarmid
MDS (7): Arquitetura Cliente-Servidor (3) Application-transparent Adaptation Web Server (or Proxy Server) Web Browser HTTP (TCP/IP) Web Client Side Intercept (CSI) TCP/IP Connection Web Client Side Intercept (CSI) Mobile Host Fixed Network Fonte: J. Jing, A. Helal e A. Elmagarmid
MDS (8): SGBDs • Oracle Lite • IBM DB/2 Everyplace • Sybase Anywhere • Versões MS Access e MS SQL Server para plataformas móveis • MS Windows CE
MDS (9) Aplicações • Companhias de seguro • Serviços emergenciais (Polícia, assistência médica, etc.) • Controle de tráfego • Serviço de taxi • E-commerce • Etc.
MDS (10): Desafios • Gerência de Dados • Gerência de Transações • Controle de Concorrência • Tolerância a Falha • Recuperação
Gerência de Dados • Distribuição de dados • Disseminação de dados • “Caching” de dados • Processamento de consulta
Gerência de Dados: Disseminação • Como um cliente acessa o BD fixo? • A abordagem mais aceita é “broadcasting”, ou “push-based” • Mas a abordagem sob demanda, “pull-based”, cresce de interesse • Abordagem híbrida • Conseqüência lógica
Disseminação: Push-based “Flat broadcasting” • Dados do FH são repetidamente difundidos através de um canal de difusão (broadcast channel) • O canal torna-se um ‘disco’ (“file on the air”) • MHs podem recuperar seus dados do ‘disco’ • O tempo de espera por um ítem é sempre o mesmo
Disseminação: ‘Discos’ Hierárquicos • Difunde os dados em diferentes freqüências, segundo suas relevâncias • Hierarquia de memória multi-nível • Dados quentes são difundidos mais frequentemente que dados frios • Dados com freqüência de acesso similar são agrupados dentro dos ‘discos’
Disseminação: “Pull-based” • Somente dados solicitados aparecerão como ‘dados no ar’
Disseminação: Híbrida • Mistura tanto “push” como “pull” • Clientes enviam pedidos se os dados não se encontram nos ‘discos’
Disseminação: Economia de bateria • Clientes podem economizar bateria se conectando somente quando dados que lhes interessam são difundidos • Um catálogo de dados é difundido m vezes toda vez que há uma difusão de dados
Gerência de Dados: “Caching” • Clientes móveis (MHs) têm acesso a um servidor de BD fixo (FH), via um canal sem fio • “Caching” de dados são importantes para melhorar a disponibilidade dos dados e o desempenho das consultas • Limitada largura de banda dos canais sem fio • Instabilidade das redes sem fio • “Caches” convencionais requerem estabilidade da rede e bandas largas
Gerência de Dados: “Caching” (2) • Uma nova abordagem de “caching” • A estratégia de substituição de dados é baseada em padrões de acesso, em vez dos esquemas o menos recentemente usado ou o mais recentemente usado
Gerência de Dados: Processamento de Consultas Classificação de dados • “Location Dependent Data” (LDD) • “Location Independent Data” (LID)
Processamento de Consultas (2): LDD A classe de dados cujo valor é funcionalmente dependente da localização. Assim, o valor da localização determina o valor correto dos dados Localização Valor do dado
Processamento de Consultas (3): LDD (2) Exemplo: Existem vários hotéis Taj na India. Entretanto, a reserva de apto no hotel dependerá do lugar onde ele está localizado. Uma atualização do status de um apto não deve afetar qualquer outro apto da rede Esquema: Permanece o mesmo; apenas, múltiplos valores corretos existem no BD
Processamento de Consultas (4): LDD (3) LDD deve ser processado levando em conta as restrições de localização. Assim, impostos em Pune (cidade da Índia) devem ser processados segundo as regras de impostos desta localidade O MDS deve oferecer a função location binding ou location mapping
Processamento de Consultas (5): LDD (4) Distribuição de dados LDD Uma abordagem é representar uma cidade em termos de um número de células móveis, “Data region”. Assim, Pune pode ser representada em termos de N células, e os LDD de Pune podem ser replicados nessas células
Processamento de Consultas (6): LDD (5) LDD: Hierarquia de Conceitos Em uma “data region”, os LDD podem ser representados de um modo hierárquico
Processamento de Consultas (7): LID Uma classe de dados cujos valores são funcionalmente independentes de localização. Assim, o valor da localização não determina o valor dos dados Exemplos: Nome de pessoa, número de conta, etc.
Processamento de Consultas (8): Tipos de consulta • Location dependent (LD) query • Location independent query
Processamento de Consultas (9): LD Uma consulta cujo resultado depende da localização geográfica da submissão da consulta Exemplo Qual é a distância da estação ferroviária de Pune para ‘aqui’? O resultado desta consulta é correto somente para ‘aqui’
Processamento de Consultas (10): LD (2) Situação: Uma pessoa viajando de carro deseja saber seu progresso e continuamente se faz a mesma pergunta. Cada vez, a resposta é diferente porém correta Requisitos: Contínua monitoração da latitude e da longitude do local de origem da consulta. GPS pode fazer isso
Gerência de Transações • Transações Clássicas ACID • Controle de Concorrência • Tolerância a Falha • Recuperação