42
Unioeste – Universidade Estadual do Oeste do Paraná CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Informática Curso de Bacharelado em Informática Banco de Dados Móveis Anete Terezinha Trasel Denise Veronez CASCAVEL 2005

Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

Unioeste – Universidade Estadual do Oeste do Paraná

CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Colegiado de Informática

Curso de Bacharelado em Informática

Banco de Dados Móveis

Anete Terezinha Trasel Denise Veronez

CASCAVEL

2005

Page 2: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

ANETE TEREZINHA TRASEL

DENISE VERONEZ

BANCO DE DADOS MÓVEIS

Trabalho acadêmico apresentado como requisito para obtenção de nota parcial de Banco de Dados II, do Curso de Informática da Universidade Estadual do Oeste do Paraná - Campus de Cascavel.

Professor: Carlos José Maria Olguín

CASCAVEL

2005

Page 3: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

LISTA DE FIGURAS

FIGURA 1: A UNIDADE MÓVEL (CARRO) VIAJA DE UMA CÉLULA PARA A OUTRA, AINDA MANTENDO A CONEXÃO,

GRAÇAS AO PROCESSO DE HANDOFF (ADAPTADA DE KUMAR, 2000 APUD AMADO, 2002). ............................ 13 FIGURA 2: ARQUITETURAS DE COMPUTAÇÃO MÓVEL............................................................................................. 14 FIGURA 3: AMBIENTE DE COMPUTAÇÃO MÓVEL EM UMA ARQUITETURA CLIENTE / SERVIDOR CONVENCIONAL.... 15 FIGURA 4: AS BASES REMOTAS POSSUEM RÉPLICAS DOS DADOS DA BASE CONSOLIDADA. ..................................... 20 FIGURA 5: ESTRATÉGIAS DE TRANSMISSÃO POR DIFUSÃO PULL-BASED E PUSH-BASED (FIGURA ADAPTADA DE ITO,

2001 APUD AMADO, 2002)............................................................................................................................ 22 FIGURA 6: QBE CLP SENDO USADO PARA A LOCALIZAÇÃO DE NOMES EM UMA AGENDA...................................... 35

Page 4: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

LISTA DE TABELAS

TABELA 1: PROJETOS QUE ABORDAM O GERENCIAMENTO DE DADOS MÓVEIS........................................................ 32

Page 5: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

LISTA DE ABREVIATURAS E SIGLAS

SGBD Sistema Gerenciador de Banco de Dados

PDA Personal Digital Assistants (Assistente Pessoal Digital)

LAN Local-Area Network

IEEE Institute of Electrical and Electronic Engineers

GSM Global System for Mobile Communications (Sistema Global para

Comunicações Móveis)

CDMA Code Division Multiple Access (Acesso Múltiplo por Divisão de Código)

IP Internet Protocol (Protocolo da Internet)

ACID Atomicidade, Consistência, Isolamento e Durabilidade

MDSTPM Multidatabase Transaction Processing Manager (Gerenciamento de Processo

de Transação de Multi-banco de dados)

GPS Global Positioning System (Sistema de Posicionamento Global)

SQL Structured Query Language (Linguagem de Consulta Estruturada)

ODBC Open DataBase Connectivity ()

JDBC Java DataBase Connectivity ()

J2ME Java2 Micro Edition

RIM Research In Motion ()

ASA Adaptive Server Anywhere

SBCS Single Byte Character Sets

DBCS Double Byte Character Sets

CLI Call Level Interface

QBE Query By Example

Page 6: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

SUMÁRIO

1 INTRODUÇÃO ............................................................................................................................................. 7

2 COMPUTAÇÃO MÓVEL............................................................................................................................ 7 2.1 DESAFIOS DO AMBIENTE MÓVEL ............................................................................................................. 8

2.1.1 Portabilidade................................................................................................................................... 8 2.1.2 Comunicação................................................................................................................................... 9 2.1.3 Mobilidade..................................................................................................................................... 11

2.2 CONCEITOS IMPORTANTES ..................................................................................................................... 12 2.2.1 Adaptação...................................................................................................................................... 12 2.2.2 Operação desconectada ................................................................................................................ 12 2.2.3 Handoff .......................................................................................................................................... 13

2.3 ARQUITETURAS DE COMPUTAÇÃO MÓVEL..........................................ERRO! INDICADOR NÃO DEFINIDO. 2.4 MODELOS DE COMUNICAÇÃO MÓVEL ..................................................................................................... 15

2.4.1 O modelo Cliente/Servidor para Ambiente de Computação Móvel............................................... 15 2.4.2 Modelo de Agentes Móveis ............................................................................................................ 16

3 BANCOS DE DADOS MÓVEIS................................................................................................................ 17 3.1 GERÊNCIA DE DADOS NUM AMBIENTE DA COMPUTAÇÃO MÓVEL.......................................................... 17 3.2 QUESTÕES DE BANCOS DE DADOS NA COMPUTAÇÃO MÓVEL .................................................................. 19

3.2.1 Replicação de dados e sincronização............................................................................................ 20 3.2.2 Caching e difusão de dados........................................................................................................... 21 3.2.3 Gerenciamento de localidade ........................................................................................................ 22 3.2.4 Transações..................................................................................................................................... 23

3.2.4.1 Modelos de Transações Móveis .................................................................................................................25 3.2.5 Processamento de Consultas ......................................................................................................... 26 3.2.6 Recuperação de falhas................................................................................................................... 27 3.2.7 Segurança ...................................................................................................................................... 30

4 PROJETOS DE GERENCIAMENTO DE DADOS MÓVEIS................................................................ 31 4.1 CODA ..................................................................................................................................................... 31 4.2 MOBISNAP ............................................................................................................................................. 31

5 SGBDS (SISTEMAS GERENCIADORES DE BANCO DE DADOS) MÓVEIS................................. 32 5.1 SQL ANYWHERE STUDIO....................................................................................................................... 32 5.2 ORACLE DATABASE LITE 10G ................................................................................................................ 33 5.3 DB2 EVERYPLACE ................................................................................................................................. 34 5.4 SQL SERVER CE.................................................................................................................................... 35 5.5 APLICAÇÕES........................................................................................................................................... 36

6 CONCLUSÃO ............................................................................................................................................. 37

REFERÊNCIAS BIBLIOGRÁFICAS .............................................................................................................. 38

Page 7: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

7

1 INTRODUÇÃO

Nos últimos anos, os avanços revolucionários nas tecnologias de hardware e de rede

possibilitaram a evolução dos computadores portáteis. Alguns desses avanços podem ser

notados na comunicação sem fio e celular, na tecnologia de baterias e na constante redução

das dimensões, peso e consumo de energia de vários componentes. Daí a presença de uma

nova geração de máquinas portáteis que vão de computadores de bolso a poderosos laptops. E

apesar de seu tamanho reduzido, estes computadores móveis geralmente possuem a

capacidade de conexão sem fio, possibilitando o acesso não só a computadores fixos como a

outros dispositivos móveis.

A computação móvel traz consigo novas classes de aplicações e vários novos desafios

tecnológicos. Sistemas de informação poderão ser acessados de qualquer lugar, a qualquer

hora buscando consultar ou modificar dados remotamente. Com isto, as aplicações de bancos

de dados ganharão novas funcionalidades e terão novos recursos, desde que feitas devidas

adaptações e modificações.

2 COMPUTAÇÃO MÓVEL

Segundo Geyer et. al (2004), a computação móvel vem surgindo como uma

nova proposta de paradigma computacional advinda da tecnologia de rede sem fio e dos

sistemas distribuídos. Nela o usuário, com os dispositivos móveis, como palmtops e

notebooks, tem acesso a uma infra-estrutura compartilhada independente da sua localização

física. Isto fornece uma comunicação flexível entre as pessoas e um acesso contínuo aos

serviços de rede.

A computação móvel envolve elementos como hardware, dados, aplicações

e usuários que têm a capacidade de se moverem para diferentes localizações. Considera-se

computação móvel, a computação onde todos os elementos do sistema têm a propriedade de

mobilidade. Esta forma de computação pode ser chamada também de pervasive computing

(computação em escala global).

Page 8: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

8

2.1 Desafios do Ambiente Móvel

Apesar de aparentemente só trazer benefícios e também parecer de simples

implementação, a computação móvel é ainda alvo de várias pesquisas, pois existem muitos

fatores que impedem a utilização máxima dos recursos desta tecnologia.

A tecnologia de computação móvel enfrenta vários desafios, que segundo

Forman e Zahorjan (1994) apud Amado (2002), têm origem em três essenciais propriedades

da computação móvel: portabilidade, comunicação e mobilidade.

2.1.1 Portabilidade

Os computadores comuns não foram projetados para serem carregados, os

montadores de tais máquinas, têm certa liberdade no sentido de espaço para cabeamento e

dissipação de calor. Por sua vez, o projeto de um PDA (Personal digital assistants- Assistente

Pessoal Digital)1, deve levar em conta propriedades como: pequeno, leve, durável,

operacional em uma variedade de condições e que requer o mínimo de consumo de energia,

assegurando longa vida útil para a bateria. Algumas concessões podem ser feitas em cada uma

dessas áreas para que se chegue a uma boa relação de funcionalidade-performance.

A seguir, são listadas algumas dificuldades de projeto impostas pela

portabilidade de um dispositivo móvel ( Forman e Zahorjan,1994 apud Amado ,2002):

• Energia – Componente mais pesado de um PDA, a bateria enfrenta

problemas de tamanho/peso e de necessidade de recarga. Técnicas para

minimização do consumo de energia podem aumentar a portabilidade

reduzindo o peso e aumentando o tempo de vida da bateria;

• Riscos de perda e extravio de dados – A portabilidade aumenta o risco

de danos físicos, acesso não autorizado, perda e roubo do dispositivo

móvel, tornando tais computadores menos seguros e confiáveis. Para

reduzir estes riscos, o usuário deve ter uma preocupação ainda maior

com operações de backup e o armazenamento de dados importantes

numa base remota que possa ser acessada quando necessário;

1 PDA é um computador de dimensões reduzidas, dotado de grande capacidade computacional, cumprindo as funções de agenda e sistema informático de escritório elementar, com possibilidade de interconexão com um computador pessoal e uma rede informática sem fios

Page 9: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

9

• Interface com o usuário limitada – o uso de mouses é inviável nos

PDAs que realizam interface com o usuário através de botões ou

canetas. Para as aplicações que necessitam da abertura de várias janelas

ao mesmo tempo, estes dispositivos também são inapropriados, levando

a desafios de design gráfico, muitas vezes tendo que reduzir

funcionalidades;

• Capacidade de armazenamento em disco – O espaço de armazenamento

num computador móvel também é comprometido pelo tamanho físico e

energia. E, como drives de disco consomem mais do que chips de

memória, vários computadores móveis não os possuem. Algumas

estratégias interessantes para contornar o problema do armazenamento

são: compressão automática de arquivos, acesso a dados armazenados

remotamente, compressão de páginas de memória virtual e

compartilhamento de bibliotecas de código.

2.1.2 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. A

comunicação através deste meio enfrenta mais obstáculos do que a comunicação através de

fios, uma vez que o ambiente interage com os sinais, potencialmente bloqueando a

transmissão ou inserindo ruídos e ecos. Desta forma, a comunicação sem fio é caracterizada

por uma menor largura de banda, maior taxa de erro e desconexões indesejadas mais

freqüentes. Estes fatores, por sua vez, aumentam a latência de dados na comunicação,

resultado de retransmissões, processamento de protocolo de controle de erro e rápidas

requisições de reconexão. O custo de implementação de uma rede sem fio é em geral maior do

que aquele para uma rede comum.

Forman e Zahorjan (1994) apud Amado (2002), discutem algumas

dificuldades do projeto de uma boa comunicação em computação móvel, como:

• Alta taxa de desconexão – Uma falha na rede pode levar processos que

estão rodando em locais diferentes a pararem completamente,

potencialmente levando a sérios problemas. Para mascarar algumas

Page 10: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

10

falhas de rede, técnicas como operações assíncronas podem ser

aplicadas. Em tais operações, o cliente envia várias requisições sem

precisar de confirmações de recepção. Outras operações similares

incluem pré-carregamento dos dados, que consiste em transferir dados

antes que eles sejam necessários;

• Alta variação de largura de banda – A variação de banda nas redes sem

fio pode ser de várias ordens de magnitude, dependendo de que tipo de

conexão um cliente está usando naquela hora, ou mesmo do número de

clientes servidos numa mesma célula. Em números, uma LAN sem fio

(Wireless Local-Area Network) pode transmitir numa taxa de 11 Mbps

(padrão IEEE 802.11b) até no máximo 54 Mbps (padrão IEEE

802.11a), e com transmissões GSM e CDMA pode-se ter taxas variando

de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma

aplicação pode lidar com essa variação através de três abordagens:

assumindo uma alta largura de banda, assumindo baixa largura de

banda ou se adaptando aos recursos disponíveis;

• Rede Heterogênea – Ao contrário da maioria dos computadores

estacionários, computadores móveis encontram conexões heterogêneas

em vários sentidos. Ao mudar de uma célula para outra, poderá também

haver mudanças nos protocolos e velocidades de transmissão. Em

algumas situações, um computador móvel pode solicitar várias

conexões como, por exemplo, quando duas células adjacentes se

sobrepõem ou quando é possível que os acessos com fio e sem fio

ocorram concorrentemente. Pode também haver a necessidade de se

trocar a interface de comunicação como, por exemplo, mudando da

cobertura celular de uma cidade para cobertura por satélite no campo;

• Riscos de segurança – Especialmente se a transmissão se estende por

uma longa área, a segurança da comunicação sem fio pode ser bem

mais comprometida do que nas redes comuns. A segurança se torna

ainda mais complicada quando se trata de delegar níveis de

acessibilidade a um usuário móvel. A comunicação segura através de

Page 11: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

11

canais inseguros é alcançada através do uso de criptografia, que pode

ser feita através de software, ou de hardware especializado.

2.1.3 Mobilidade

Segundo Amado (2002), a capacidade de mudar de localidade enquanto

ainda conectado à rede, aumenta a volatilidade da informação. Alguns dados considerados

estáticos para computadores fixos, poderão se tornar dinâmicos em dispositivos móveis. Essa

volatilidade levanta questões importantes de custo-benefício como, por exemplo, armazenar

um objeto volátil em cache faz pouco sentido. A mobilidade introduz vários problemas: o

endereço de rede de um computador móvel muda dinamicamente; o caminho de comunicação

aumenta quando o mesmo visita uma célula vizinha; sua localização atual afeta parâmetros de

configuração; assim como respostas a consultas. Em Forman e Zahorjan (1994) apud Amado

(2002) são discutidos alguns problemas inerentes à mobilidade de um dispositivo, listados a

seguir:

• Migração de endereço – Na medida em que as pessoas se deslocam,

seus computadores móveis usarão diferentes pontos de acesso à rede ou

“endereços de rede”. Uma vez que um sistema armazena o endereço de

um host, este é geralmente colocado em cache com um longo tempo de

expiração. No protocolo IP (Internet Protocol), por exemplo, o IP de

um host está intrinsecamente ligado a seu endereço de rede. Mover para

uma nova localidade significa obter um novo IP;

• Informação dependente de localidade – Prover mecanismos que

obtenham a configuração de dados apropriada a cada localidade é um

desafio importante para a computação móvel. Um computador portátil

carregado por um usuário pode ser usado numa grande variedade de

domínios administrativos, cada um com suas convenções. Além do

problema da configuração, dispositivos móveis necessitam de acesso a

mais informações dependentes de localidade. Um grande desafio da

computação móvel é que, além do custo de comunicação com

elementos móveis, há o custo adicional de localizá-los. Muitas outras

questões podem surgir como o acesso flexível à informação de

localização do usuário sem a violação de sua privacidade;

Page 12: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

12

• Migração de localidade – Mesmo que um computador móvel tenha a

capacidade de achar o servidor mais próximo para um dado serviço,

com o tempo, a migração poderá mudar esta condição. A distância

física entre dois pontos não reflete necessariamente a distância das duas

redes e o tamanho do caminho de comunicação pode crescer

desproporcionalmente, levando à existência de mais passos

intermediários, aumentando a latência, o risco de desconexão e

consumindo capacidade da rede. Para contornar tais problemas, o

serviço de conexões pode ser dinamicamente transferido para servidores

que se encontrarem mais próximos à localidade da unidade móvel.

2.2 Conceitos Importantes

A seguir são descritos alguns conceitos que envolvem a computação móvel.

2.2.1 Adaptação

À capacidade de ajuste e a possibilidade de produzir resultados apesar de

condições adversas dá-se o nome de adaptação. Dispositivos neste ambiente devem possuir a

capacidade de executar um número crescente de tipos de aplicações e se adaptar a situações

onde há uma demanda por recursos computacionais nem sempre disponíveis e outras, onde os

recursos são abundantes e aparentemente dispensáveis.

As adaptações podem ser feitas em aplicações a fim de minimizar as

restrições da computação móvel. Muitas formas de endereçar este problema são possíveis.

2.2.2 Operação desconectada

Devido à natureza da comunicação móvel sem fio, muitos fatores afetam a

confiabilidade e a qualidade das conexões. No ambiente móvel e sem fio, desconexões

intencionais ou não, ocorrem freqüentemente. Um usuário cujo computador móvel esteja com

a bateria fraca, pode desconectar da rede propositalmente, a fim de poupar energia.

Na operação desconectada, o cliente continua tendo acesso aos dados

durante interrupções temporárias de serviço. Isto é possível devido ao armazenamento dos

dados localmente (em cache).

Page 13: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

13

Mas a modificação e a leitura dos dados armazenados localmente causam

alguns problemas como necessidade de recuperação e problemas de consistência dos dados.

Recuperação de dados significa a habilidade de restaurar uma base de dados depois de uma

falha no sistema ou um erro de execução, fazendo com que ela volte a um estado consistente

previamente conhecido. Um princípio simples de recuperação é a redundância de dados, ou

seja, o armazenamento dos mesmos dados múltiplas vezes. Os dados locais armazenados em

cache podem estar desatualizados ou inconsistentes com os da base, mas os dispositivos

móveis não devem ter conhecimento desta situação até que seja re-conectado. Enquanto não

ocorrer a re-conexão, os dados modificados localmente não deverão ser propagados.

A transparência para a aplicação é preservada durante uma desconexão,

porque o sistema tem a responsabilidade de propagar modificações e detectar possíveis

conflitos de atualização, quando a conexão for retomada.

2.2.3 Handoff

Handoff é a capacidade de uma rede de dar suporte dinâmico à migração de

terminais móveis entre suas células. É através desse processo, ilustrado na Figura 1, que

usuários da rede conseguem manter seus dispositivos móveis conectados ao sair de uma célula

para outra vizinha. Ou seja, graças ao handoff é possível perder o contato com uma estação

base numa célula, estabelecendo contato com outra sem, no entanto, haver desconexão, esta

troca deve ocorrer quando o host móvel (o carro da Figura 1) está na região onde as células se

sobrepõem (Kumar, 2000 apud Amado, 2002).

Figura 1: A unidade móvel (carro) viaja de uma célula para a outra, ainda mantendo a conexão, graças ao processo de handoff (adaptada de Kumar, 2000 apud Amado, 2002).

Page 14: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

14

A arquitetura geral de um sistema de computação móvel e sem fio é

formada por entidades ligadas por uma rede fixa e interconectada por fios e por entidades

móveis que se comunicam com esta rede.

A unidade móvel (ou host móvel) é um dispositivo capaz de se conectar

com a rede fixa através de um link sem fio (wireless link). Hosts estacionários são conectados

através de uma rede de alta velocidade interligada por fios (Fast Ethernet com taxa de 100

Mbps ou Gigabit Ethernet com 1 Gbps, por exemplo) e podem ser hosts fixos ou estações

base (base stations). O host fixo é um computador de propósito geral, não equipado para

administrar unidades móveis, mas que pode ser configurado para isso (Elmasri e Navathe,

2000 apud Amado,2002). A estação base (também chamada de estação de suporte à

mobilidade, Mobile Support Station (Imielinski e Badrinath,1993 apud Amado, 2002)) possui

uma interface de comunicação para o acesso de dados pelas unidades móveis que se

encontram em sua célula, ou seja, que estão na área de cobertura dentro da qual uma estação

base consegue captar seu sinal. Quando um computador móvel sai de uma célula e entra em

uma nova, está sob o controle de uma nova estação base. Como a comunicação entre eles se

dá sem fio, a taxa de transferência de dados varia de poucos kilobits por segundo (Kbps) a

alguns megabits por segundo (Mbps). O esquema da arquitetura geral é mostrado na Figura 2.

Figura 2: Arquitetura de computação móvel (Adaptado de Côrtes e Lifschitz, 2002).

Page 15: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

15

2.3 Modelos de comunicaçã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. A seguir é apresentado um breve resumo sobre o modelo

cliente/servidor, bem como algumas extensões desse modelo de software para a computação

móvel.

2.3.1 Modelo Cliente/Servidor para Ambiente de Computação Móvel

Na computação móvel, o host móvel atua como um cliente requisitando

serviços dos servidores localizados na rede fixa. Nestes casos, os dados e as funcionalidades

estão distribuídos através de vários servidores em diferentes hosts fixos que podem

comunicar-se entre si para atender as solicitações dos clientes. Em muitos casos, o servidor é

replicado em diferentes sites na rede fixa para aumentar a disponibilidade nos casos de falhas

nos sites ou na rede de comunicação. Pode ser observado na Figura 3, extraída de (Pitoura e

Chrysanthis, 2000 apud Côrtes e Lifschitz, 2002), um ambiente de computação móvel em

uma arquitetura cliente servidor tradicional.

Figura 3: Ambiente de computação móvel em uma arquitetura Cliente / Servidor convencional

(Adaptado de Côrtes e Lifschitz, 2002).

Extensões do tradicional modelo cliente/servidor, como de enfileirar

mensagens RDC (Remote Procedure Call), são necessárias para dar apoio a operações

desconectadas e a fraca conectividade. Otimizações adicionais como compressão e filtros de

Page 16: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

16

dados também são importantes. Por estes motivos, o tradicional modelo cliente/servidor deve

ser estendido para prover sérios componentes para implementação de otimizações adequadas

e possibilitar o mínimo possível de mudanças nos clientes e nos servidores. Dentre eles pode-

se citar (Pitoura and Samaras, 1998 apud Côrtes e Lifschitz, 2002):

• Cliente/Agente-Servidor/Servidor;

• Cliente/Agente-Cliente/Servidor;

• Cliente/Agente-Agente/Servidor.

2.3.2 Modelo de Agentes Móveis Agentes Móveis são processos enviados de um computador fonte para

realizar uma tarefa específica em outro computador. São processos que migram associados

com um itinerário (direção) e com uma distribuição dinâmica do seu código e do seu estado.

Após a sua submissão, o agente móvel processa de forma autônoma e independente de seu

emissor. Quando alcança um cliente ou servidor, se integra a um ambiente de execução de

agentes. Possui a capacidade de se transportar para outro cliente ou servidor, gerando novos

agentes ou interagindo com outros agentes. Quando concluído, entrega seus resultados ao

cliente ou ao servidor emissor ou a outro cliente ou servidor. Dois fatores principais motivam

a utilização dos agentes móveis na computação móvel. Em primeiro lugar, os agentes móveis

oferecem um método assíncrono eficiente para procurar informações ou serviços, de forma

rápida em uma rede. Clientes móveis são lançados na rede e procuram em toda parte pela

informação ou serviço desejado. Em segundo lugar, os agentes móveis suportam a

conectividade intermitente, as redes lentas e os equipamentos com poucos recursos. Este

segundo fator torna a utilização dos agentes móveis muito atraente para a computação móvel.

Durante um período de desconexão o cliente móvel envia um agente móvel

para a rede fixa e este agente age como um substituto da aplicação na rede fixa, permitindo

interação durante a desconexão. De forma oposta, o agende móvel é carregado no cliente

móvel, vindo da rede fixa, quando acontece uma nova conexão. Quando em fraca

conectividade, todo o tráfego de comunicação através do link sem fio reduz a possibilidade de

submissão de um grande número de mensagens pelos agentes fixos e na obtenção de seus

resultados. Por este motivo, os agentes móveis deslocam a carga de computação dos clientes

móveis, pobres em recursos, para a rede fixa (Pitoura e Samaras, 1998 apud Côrtes e

Lifschitz, 2002).

Page 17: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

17

3 BANCOS DE DADOS MÓVEIS

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 (Özsu e Valduriez, 1999 apud Amado,

2002). Entre as principais características dos SGBDs (Sistemas Gerenciadores de Banco de

Dados) Móveis podemos destacar:

• Vários bancos de dados interligados por uma rede de comunicação sem

fio;

• Acesso de um computador móvel (host móvel) a um banco de dados

residindo em um computador fixo (host fixo) ou em um computador

móvel;

• O computador móvel pode desempenhar o papel de cliente ou servidor

de banco de dados;

• Os bancos de dados são autônomos, distribuídos e podem ser

heterogêneos.

3.1 Gerência de Dados num ambiente da Computação Móvel

Com relação ao gerenciamento de dados, a computação móvel pode ser

considerada uma variação da computação distribuída. Bancos de dados móveis podem ser

distribuídos em dois possíveis cenários (Elmasri e Navathe, 2000 apud Amado, 2002):

1. Toda a base de dados está distribuída principalmente entre os

componentes ligados por fiação, possivelmente com replicação total ou

parcial dos dados. Uma estação base gerencia sua própria base de dados

com um SGBD com funcionalidades adicionais para localizar unidades

móveis e para gerenciar consultas e transações do ambiente móvel.

Page 18: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

18

2. A base de dados é distribuída pelos componentes com e sem fio. A

responsabilidade do gerenciamento dos dados é compartilhada entre as

unidades móveis e as estações base.

Desta forma, muitas das questões de gerenciamento de dados distribuídos

também se aplicam aos bancos de dados móveis, segundo Elmasri e Navathe (2004), desde

que se levem as seguintes considerações adicionais e variações em conta:

• Distribuição de dados e replicação – Os dados, podem estar

desigualmente e irregularmente distribuídos entre unidades móveis e

estações base. As restrições de consistência aumentam o problema de

gerenciamento de dados em cache. Esta deve proporcionar à unidade

móvel acesso àqueles dados mais freqüentemente acessados e

atualizados;

• Modelos de transação – Questões de tolerância à falhas e corretude das

transações são agravadas no ambiente móvel. A transação móvel é

executada seqüencialmente através de diferentes estações base e

possivelmente em múltiplos conjuntos de dados, dependendo da

movimentação da unidade móvel. Não existe coordenação central na

execução de uma transação, por exemplo, quando se tem a base

distribuída pelos componentes com e sem fio. Para isso, as propriedades

ACID (atomicidade, consistência, isolamento e durabilidade) das

transações podem precisar de modificação e novos modelos de

transação podem ser definidos;

• Processamento de consultas – A informação sobre a localização dos

dados é importante e afeta a análise de custo benefício do

processamento de consultas. As respostas às consultas precisam ser

dadas às unidades móveis que mesmo estando em trânsito e cruzando

células, devem receber completamente e corretamente tais respostas;

• Recuperação e tolerância a falhas – O ambiente de bancos de dados

móveis pode apresentar falhas locais (queda da unidade móvel), falhas

de mídia, de transação e de comunicação. Uma falha local ocorre

Page 19: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

19

freqüentemente devido à bateria fraca no computador móvel. Se uma

unidade móvel suspende a conexão voluntariamente, isto não deve ser

tratado como falha. Falhas de transação são mais freqüentes durante

operações de handoff. Falhas nas unidades móveis, por sua vez, causam

particionamento da rede e afetam os algoritmos de roteamento;

• Projeto de banco de dados móveis – O problema da determinação do

nome global da unidade (seu número de IP, por exemplo), para a boa

manipulação de consultas, é comprometido por causa da migração de

localidade da unidade e freqüente suspensão de comunicação. O projeto

de banco de dados deve considerar várias questões de gerenciamento de

metadados – por exemplo, a atualização constante da localização da

informação;

• Serviços baseados na localização: Conforme os clientes se movem, a

informação dependente da localização no cache pode se tornar velha.

As técnicas de despejo são importantes neste caso. Alm disso, atualizar

freqüentemente as consultas dependentes da localização, e então aplicar

essas consultas para atualizar o cache, apresenta um problema;

• Divisão do trabalho: Certas características do ambiente móvel forçam

uma mudança na divisão de trabalho no processamento de consultas.

Em alguns casos, o cliente precisa funcionar independentemente do

servidor;

• Segurança: Os dados móveis são menos seguros que os que são

deixados em uma localização fixa. As técnicas formais para o

gerenciamento e autorização de acesso a dados críticos se tornam mais

importantes nesse ambiente. Os dados também são mais voláteis, e as

técnicas precisam ser capazes de compensar sua perda.

3.2 Questões de bancos de dados na computação móvel

Esta subseção procura conceituar e fazer um estudo mais detalhado de

algumas características do banco de dados móveis.

Page 20: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

20

3.2.1 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. Para

aumentar a disponibilidade de dados e a performance de aplicações sobre estes dados em

unidades móveis, os dispositivos carregam dados replicados, isto é, cópias redundantes das

informações contidas no banco de dados distribuído. A replicação é uma técnica estratégica

importante que otimiza os recursos de hardware e de rede, maximizando a flexibilidade e a

escalabilidade em ambientes heterogêneos. A base de dados que contém os dados a serem

replicados é chamada de consolidada. As bases remotas são aquelas que contêm um

subconjunto das informações da base consolidada (Figura 4) e geralmente se localizam

distantes fisicamente desta.

Figura 4: As bases remotas possuem réplicas dos dados da base consolidada.

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. Quando os dados num servidor ou numa base e suas réplicas

são sincronizados, o log de transação de cada volume replicado é usado para verificar se

aqueles dados foram atualizados, inseridos ou removidos da base central. As cópias mais

recentes são então replicadas para todos os outros locais que acessam esses dados

(Novel,1997 apud Amado, 2002).

Os principais benefícios de se fazer replicação de dados num ambiente

móvel estão relacionadas à disponibilidade de dados localmente, ou seja, são os dados

armazenados na cache local das unidades móveis que possibilitam operações desconectadas

Page 21: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

21

ou com fraca conexão e aumentam o tempo de resposta das requisições de informações, já que

não há a necessidade de se conectar a bases distantes. As bases fixas também têm um ganho

de performance com a replicação, já que em alguns casos não é necessário requisitar seu

poder de processamento.

Entre os desafios de um sistema de replicação de dados está o de assegurar

que a integridade de transações seja sempre mantida em cada banco de dados e assegurar que

haja consistência dos dados replicados.

Nem sempre os dados necessários a uma aplicação estarão disponíveis na

cache local, por isso, as unidades móveis, geralmente apresentam a necessidade de receber

dados de uma base remota. Uma importante abordagem é a difusão de dados, onde uma

estação base envia informações para todas as unidades móveis localizadas em sua célula de

cobertura (Amado, 2002).

3.2.2 Caching e difusão de dados

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. Os benefícios de se armazenar os dados em cache (em disco local) são

inúmeros, para a melhor eficiência das operações. Esta abordagem é essencial na economia da

baixa de largura de banda de uma rede sem fio. Para coordenar a classificação dos dados

quanto ao seu uso na cache, são usadas duas regiões distintas, definidas como região quente e

região fria (Ito, 2001 apud Amado, 2002). A região quente contém o conjunto de dados que

são utilizados mais freqüentemente e a fria, o conjunto de dados utilizados com menos

freqüência.

O tipo de caching onde o cliente organiza os dados em sua cache de acordo com

propriedades destes dados e não através de listas de páginas e tuplas, é chamado de caching

semântico e proporciona um ganho de performance nesta operação.

Quando os dados consultados não se encontram na cache, é necessária uma solicitação

de dados ao servidor. Esta solicitação pode ser total, quando o cliente precisa receber todos os

dados do servidor ou parcial, quando alguns dados na base remota podem ser utilizados para

responder à consulta (Ito, 2001 apud Amado, 2002).

Page 22: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

22

Segundo Silberchatz, Korth e Sudarshan (1999), existem dois motivos para se usar

difusão de dados. Primeiro, a unidade móvel evita o gasto de energia com a transmissão de

solicitação de dados. Segundo, os dados difundidos podem ser recebidos por um grande

número de unidades móveis de uma só vez, sem um custo adicional, o que é ideal para um

grupo de clientes com as mesmas necessidades de atualizações.

As estratégias de envio de mensagens por difusão se classificam em pull-based,

quando o cliente faz o papel ativo, requisitando dados ao servidor e recebendo estes dados em

seguida e push-based, quando a iniciativa de transmissão de dados é do servidor e o cliente

funciona apenas como receptor (Figura 5).

Figura 5: Estratégias de transmissão por difusão pull-based e push-based (Figura adaptada de Ito, 2001 apud Amado, 2002).

Denise

3.2.3 Gerenciamento de localidade

Na computação móvel, objetos como softwares ou usuários que usam aparelhos sem

fio podem se movimentar de um local para o outro da rede. Informações sobre o atual

posicionamento destes objetos devem ser mantidas em locais específicos da rede. Este

gerenciamento de localidade envolve duas operações básicas: busca e atualização (Pitoura e

Samaras, 2001 apud Amado, 2002).

Page 23: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

23

Uma busca é solicitada cada vez que há a necessidade de localizar um objeto, para se

comunicar com usuários móveis ou executar aplicações remotamente. A atualização da

localidade armazenada de um objeto é necessária quando este migra de um local para outro

dentro da rede ou para uma outra rede.

As abordagens de armazenamento de informações sobre localidade têm suas vantagens

e desvantagens. A informação atualizada da exata localização da unidade móvel é mantida em

cada ponto da rede que acessa suas informações. Isto reduz o tempo de uma consulta nesta

unidade móvel, pois sua localização é imediata. A desvantagem desta abordagem é que muitas

atualizações são necessárias. Já na outra abordagem, nenhuma informação é armazenada na

rede a respeito da localização da unidade móvel, eliminando, portanto o custo de atualização

desta informação. Aqui, a desvantagem é o custo da busca do objeto que tem que ser feita

globalmente na rede.

Em termos de disponibilidade, as possibilidades de projeto variam entre dois pontos:

salvar a informação da localização da unidade móvel em todos os pontos da rede e não

disponibilizar esta informação em nenhum local da rede. Há um grande número de critérios

para escolher em que pontos da rede salvar a informação, por exemplo, é interessante manter

os dados sobre a localização de uma unidade móvel nos locais da rede que acessem mais

vezes sua base de dados.

A respeito da precisão da informação, ao invés de manter sua exata localização, os

servidores podem manter um conjunto de possíveis localidades do cliente, a partir do seu

histórico. Há ainda a possibilidade de se configurar uma área maior chamada localidade do

cliente.

Atualidade se refere com que freqüência as atualizações ocorrem a respeito da

localidade do cliente. Por exemplo, para usuários altamente móveis, pode-se abrir mão de

atualização da informação todas as vezes que eles mudam de localidade.

3.2.4 Transações

Uma transação é uma unidade lógica de processamento de banco de dados

que inclui uma ou mais operações de acesso à base. Entre estas operações estão: inserção,

exclusão, modificação e consulta de dados (Elmasri e Navathe, 2000 apud Amado, 2002).

Page 24: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

24

A concorrência de transações que acessam a mesma base de dados pode

levar a problemas como a perda de consistência dos dados. Portanto, transações têm que

apresentar algumas propriedades desejáveis a fim de evitar estes erros.

O controle de concorrência e os métodos de recuperação de falhas devem

assegurar estas que são chamadas de propriedades ACID (Elmasri e Navathe, 2000 apud

Amado, 2002).

O sistema de banco de dados deve controlar a execução concorrente de

transações para assegurar que o estado do banco de dados permaneça consistente. Podem

ocorrer alguns conflitos de operações de transações que ocorrem concorrentemente, por isso

técnicas como serialização e agendamento de transações se fazem necessárias para evitar

conflitos (Silberchatz, Korth e Sudarshan, 1999).

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. O uso do meio sem fio

e a mobilidade resultante dos consumidores e produtores de dados afetam o processamento

das transações de várias formas (Pitoura e Bhargava, 1994 apud Côrtes e Lifschitz, 2002).

O emprego de conexões sem fio resulta em transações longas, em função

dos longos atrasos da rede. Além disso, transações móveis envolvem sites que não são

continuamente conectados ao resto da rede. Por esta razão é que os usuários de hosts móveis

evitam freqüentemente o uso dos meios sem fio, uma vez que estas conexões são caras, tanto

monetariamente quanto em termos de poder de consumo dos hosts móveis, ou porque os

recursos da rede não estão disponíveis na sua localização geográfica. Adicionalmente, para

muitas tecnologias, como os modem celulares, há uma alta carga inicial para cada

comunicação. O custo efetivo da gerência de transação para cada tecnologia pode adotar a

abordagem do suporte a poucas transações longas ao invés de muitas transações curtas.

Finalmente, a computação móvel é mais propensa a erros, em função das

freqüentes desconexões e serem mais suscetíveis a acidentes do que os hosts fixos. A

mobilidade resulta em transações que acessam sistemas de informações heterogêneas. Além

disso, enquanto em projetos estáticos a localização dos usuários é fixa, no ambiente móvel

mudam constantemente. Conseqüentemente, as transações móveis acessam dados de posição

(localização) dos clientes que mudam rapidamente, em muitos casos em posições imprecisas.

Page 25: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

25

Finalmente, as transações podem envolver dados que estão dinamicamente sendo mudados de

lugar (Pitoura e Bhargava, 1994 apud Côrtes e Lifschitz, 2002).

3.2.4.1 Modelos de Transações Móveis

Segundo Dunham e Kumar (1998) apud Manganelli e Romani (2004), para

o processamento de informações móvel tornou-se necessário fazer uma reestruturação das

transações ACID e desenvolver um novo modelo de transação. A seguir serão mostrados

alguns modelos de transações móveis.

• Transação Kangaroo: é o primeiro e o único em redes móveis que

inclui movimento em sua estratégia de execução. O modelo é

construído assumindo um multi-banco de dados onde o gerenciamento

da transação é sempre desempenhado pela estação base. Como a

unidade móvel se movimenta, então o gerenciamento da transação

também se move. A mudança na localização da transação é conseguida

pela divisão da transação durante o handoff. Cada transação é divida em

sub-transações que são executadas independentemente do sistema de

banco de dados da rede fixa.

• Reporting e Co-transação: a origem das transações é representada em

termos de reporting, que pode compartilhar seu resultado parcial com a

transação de origem a qualquer hora e pode realizar a operação commint

independentemente. E co-transações, que é uma classe especial da

transação de reporting, na qual pode ser forçada a esperar por outras

transações, depois de entregar seu resultado pode continuar a executar

outras operações. Essas duas transações podem ser executadas tanto na

estação base como na unidade móvel.

• Clustering: o banco de dados é divido em cluster (agrupamento), e um

segundo nível de consistência dos dados é definido e mantido. Nesse

modelo, uma transação móvel é decomposta em um conjunto de

transações fracas e completas. As operações de leitura e escrita também

são classificadas como fracas e completas. As operações fracas são

permitidas para acessar enquanto desconectadas. A transação pode

Page 26: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

26

acessar ou atualizar dados na unidade móvel e pode se tornar

inconsistente com os dados da rede fixa.

• Semantics Based: assume o processamento de uma transação móvel

como um problema de conexão e concorrência, podendo ter longos

atrasos no processamento de dados, bem como, desconexões. Essa

abordagem utiliza a organização dos objetos para dividir grandes e

complexos objetos em pequenos fragmentos. O servidor do banco de

dados disponibiliza os fragmentos a pedido de uma unidade móvel. Para

completar a transação, a unidade móvel retorna os fragmentos para o

servidor.

• MDSTPM (Multidatabase Transaction Processing Manager): Cada

componente do sistema de banco de dados é responsável pelo

gerenciamento das transações locais. Para facilitar a execução de

transações globais, uma camada de software adicional pode ser

implementada, permitindo o gerenciamento e coordenação de

transações através dos múltiplos componentes do sistema de

gerenciamento (Yeo e Zalavsky, 1994 apud Manganelli e Romani,

2004).

3.2.5 Processamento de Consultas

Para se realizar uma consulta móvel, dependendo do caso, é necessário se

ter a localização exata da unidade. Podemos utilizar o GPS para consulta da localização, ou

através de uma triangulação das antenas que captam o sinal.

Segundo Nassu e Finger (2000) apud Manganelli e Romani (2004), quando

um usuário faz uma consulta, diversos fatores contribuem no tempo de resposta do sistema,

tais como:

• O tempo de transmissão de dados pode ser alto. A baixa taxa de

transmissão dos meios sem fio e a baixa confiabilidade, pode gerar

retransmissões freqüentes, influindo nesse tempo;

Page 27: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

27

• A execução da consulta ao banco de dados pode ser demorada,

principalmente no caso em que as cidades são grandes, com grande

número de ruas e informações. O grande uso de forma concorrente

também pode retardar o tempo de resposta do banco de dados;

• O usuário pode estar desconectado da rede, por vontade própria ou não.

O tempo de desconexão pode ser longo e a resposta pode demorar mais

para chegar ao usuário que a solicitou.

A localização dos dados no processamento das consultas pode incluir dados

transientes, que trocam de valores de acordo com o processamento das consultas, e dados

contínuos, que são continuamente atualizados durante o movimento da unidade móvel.

Em computação móvel, uma unidade móvel está em constantes mudanças

de lugar. A localização depende dos dados existentes e o conjunto de dados e seus valores são

ligados com uma localização particular, onde respostas para consultas dependem de onde são

originadas. Então dependendo do lugar da consulta teria um resultado diferente de uma

consulta realizada em outro lugar. 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, etc;

• Direção;

• Sentido;

• Trajetória;

• Tempo de processamento de consulta, demora na transmissão de dados,

desconexões ou quedas de sinal.

3.2.6 Recuperação de falhas

O processo de recuperação 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).

Page 28: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

28

Um sistema em um ambiente móvel está sujeito a falhas tanto de hardware

como de software. Em cada um destes casos, informações que se referem ao sistema de banco

de dados podem ser perdidas. Uma parte essencial do sistema de banco de dados é um

esquema de recuperação responsável pela detecção de falhas e pela restauração do banco de

dados para um estado consistente que existia antes da ocorrência da falha.

Para que o sistema não seja prejudicado devido às falhas em seus

componentes, erros devem ser detectados o mais rápido possível, através de um diagnóstico

apropriado. Para recuperar os dados, informações relevantes são armazenadas em um local

fixo durante o processamento de transações.

Em sistemas distribuídos, a recuperação de falhas é baseada em pontos de

recuperação, conhecidos como checkpoints. No caso de falhas e desconexões, a aplicação usa

o último checkpoint salvo para reiniciar sua execução (Pitoura e Samaras, 1998 apud Amado,

2002).

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, pois ela é responsável por gerar

um checkpoint, caso mude de célula ou haja uma desconexão.

Um checkpoint global consiste de um conjunto de checkpoints locais. Os

estados globais são armazenados e usados pelo protocolo para recuperar falhas das aplicações.

Um estado global inclui o estado de cada processo que faz parte da aplicação distribuída e

possivelmente algumas mensagens. Para uma recuperação correta, o protocolo pode salvar um

estado consistente global.

Neves e Fuchs (1996) apud Amado (2002), 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. O armazenamento local não consome

largura de banda e leva menos tempo para ser criado, no entanto, podem ocorrer perdas

durante desconexões da unidade móvel.

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 outro em unidades

móveis para recuperar falhas temporárias (falhas de software).

Page 29: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

29

Algumas características de um esquema de checkpoint em um ambiente

móvel, como localização, desconexão, energia, rede e falhas são analisadas a seguir.

• Localização – Para que exista a comunicação entre a rede fixa e a

unidade móvel, é necessário saber a localização exata desta última. A

localização de uma unidade móvel dentro de uma rede não é constante

devido à sua mobilidade. É necessário que se localize um dispositivo

móvel para depois determinar seu checkpoint. O protocolo checkpoint

tem a função de armazenar o estado do processo em um local conhecido

e de fácil acesso ou em um computador próximo da localização atual da

unidade móvel. O protocolo pode ainda manter a trilha dos lugares onde

o estado do processo foi salvo;

• Desconexão – Uma unidade móvel é dita desconectada quando está fora

da faixa de transmissão das estações base. Durante a desconexão, todas

as informações armazenadas em locais remotos não estão acessíveis às

unidades móveis. Desta forma, uma unidade móvel fica impossibilitada

de enviar ou receber mensagens. A criação de checkpoints por

processos enquanto a unidade móvel está desconectada é possível. Por

outro lado, os protocolos têm a função de salvar uma grande quantidade

de informações que garantam sua execução após uma falha. Estas

informações incluem a ordem da recepção e os conteúdos das

mensagens. Quando as informações precisarem ser salvas nas unidades

móveis, poderá haver limitação de memória e de espaço para o

armazenamento e devido às freqüentes desconexões das unidades

móveis, o local do checkpoint pode não estar disponível;

• Energia – Devido às restrições oferecidas pelo tempo das baterias

utilizadas pelos PDAs, o consumo das mesmas deve ser reduzido. O

protocolo checkpoint tem a função de reduzir a quantidade de

informações que são adicionadas às mensagens e evitar o envio de

mensagens extras, realizando o menor número de acessos possível ao

servidor;

Page 30: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

30

• Rede – A diversidade das tecnologias utilizadas nas redes sem fio faz

com que as características da rede não sejam constantes, tais como,

custos, velocidade e latência. O protocolo checkpoint deverá se adaptar

às características da rede onde está atuando;

• Falhas – Unidades móveis podem apresentar falhas de software e de

hardware. Falhas de software podem ocorrer quando acontecem

problemas com o sistema operacional, descarga de bateria, entre outros.

São gerenciadas por soft checkpoints, que são armazenados localmente

na unidade móvel. Falhas de hardware ocorrem quando, por exemplo, o

computador portátil é roubado, danificado, etc. São gerenciadas por

hard checkpoints, que são armazenados na rede fixa. O protocolo

checkpoint deve fornecer mecanismos para tolerar os tipos de falhas que

possam vir a acontecer com as unidades móveis.

3.2.7 Segurança

Os riscos de segurança de sistemas e de redes de computadores são

agravados quando inseridos no ambiente móvel, muito mais propenso a ataques e falhas. Na

computação móvel, a portabilidade dos dispositivos usados pode levar à perda das unidades, o

que caracteriza perda de dados e de confidencialidade.

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. Estas não são

características particulares de segurança num ambiente móvel, a não ser pelo fato de que a

proteção de um dispositivo móvel deve ser simplificada, devido à escassez de recursos e

pouco poder de processamento destes computadores.

Para contornar a falta de poder computacional, as unidades móveis

transferem certas tarefas para os servidores, o que impede o nível de isolamento

computacional e de comunicação muitas vezes requeridos para que se assegure um nível

razoável de segurança.

Page 31: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

31

A heterogeneidade do ambiente móvel é outro tipo de desafio. O usuário

que freqüentemente migra para outras localidades se submete a diferentes tipos de esquema de

segurança.

4 PROJETOS DE GERENCIAMENTO DE DADOS MÓVEIS

Alguns modelos de projetos de gerenciamento de dados móveis e

comunicações num ambiente móvel foram implementados e testados. A seguir são

apresentados alguns modelos.

4.1 Coda

O Coda (Satyanarayanan, et.al., 1990 apud Amado, 2002) é um projeto

que começou a ser desenvolvido em 1987 pelo grupo de Ciência da Computação da

Universidade de Carnegie-Mellon, EUA. É um sistema de arquivos experimental, baseado no

modelo de sistema de arquivos do UNIX, cujo objetivo é oferecer a clientes o acesso contínuo

a dados de uma rede mesmo com falhas ou suspensões de conexão. A importância deste

projeto reside no fato de nele ter sido introduzido o conceito de operação desconectada.

4.2 MobiSnap

Em 1999, pesquisadores da Universidade Nova de Lisboa (UNL) e da

Universidade do Minho em Portugal se uniram na iniciativa do projeto MobiSnap (Cunha,

2001 apud Amado, 2002).

O Mobisnap é um sistema de base de dados para ambientes móveis. O

sistema é baseado numa arquitetura cliente/servidor utilizando replicação otimista. Os clientes

mantêm uma cópia parcial dos dados e o sistema combina um mecanismo que evita os

conflitos (reservas) com outro que permite a sua resolução – transações móveis. Estes

mecanismos permitem que os clientes mantenham a sua autonomia mesmo em situações de

desconexão.

Page 32: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

32

Tabela 1: Projetos que abordam o gerenciamento de dados móveis.

PROJETO NATUREZA DESENVOLVIDO POR CARACTERÍSTICAS

Coda

Sistema de arquivos

Carnegie-Mellon University

− Vênus: gerenciador de cache no servidor (estados de hoarding, emulação e reintegração);

− Replicação otimista;

− Boa portabilidade

MobiSnap

Camada de acesso a SGBD-R

Universidade Nova de Lisboa e Universidade do Minho

− Mecanismo de reserva;

− Mecanismo de notificação de commit

5 SGBDs (Sistemas Gerenciadores de Banco de Dados) MÓVEIS

Visando ilustrar a importância da computação móvel no mercado, neste

capítulo são mostrados alguns SGBDs utilizados no mercado atualmente.

Os maiores fabricantes de software do mundo atentaram para o importante e

crescente ramo da computação móvel e lançaram suas soluções comerciais, visando não só o

usuário pessoal, mas principalmente o corporativo, que busca o melhor gerenciamento de seu

negócio através da manipulação de dados e transações longe dos escritórios.

5.1 SQL Anywhere Studio

O SQL Anywhere Studio é um pacote abrangente que fornece o

gerenciamento de dados e a sincronização dos dados empresariais, para permitir o rápido

desenvolvimento e a implementação de aplicações para bancos de dados em ambientes

móveis, incorporados e de empresas de pequeno e médio porte. O SQL Anywhere Studio

amplia o alcance dos dados, informações e aplicações empresariais, até onde quer que as

transações empresariais ocorram.

Em termos de plataformas suportadas, estão disponíveis em Windows (9x,

Me, NT, 2000 e XP), Windows CE/Pocket PC, Novell NetWare, Palm, UNIX (incluindo Sun

Page 33: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

33

Solaris/Sparc e Linux) e Wind River VxWorks. A sincronização do banco de dados móvel é

suportada por vários sistemas gerenciadores de bancos de dados relacionais, como o Sybase

Adaptive Server Anywhere, Sybase Adaptive Server Enterprise 11.5 e superior, IBM DB2

Universal Database 7.1, Microsoft SQL Server 7 e 2000, Oracle 8i e 9i.

O SQL Anywhere Studio inclui desenvolvimento de software, ferramentas

de SGBDs relacionais e de sincronização. Pode-se desenvolver aplicações em várias

linguagens de programação. O programa inclui um sistema gerenciador de bancos de dados

relacionais que é capaz de operar como um servidor de workgroup ou um banco de dados

embutido. As opções de sincronização incluem suporte à replicação direta com o Sybase

Adapter Server Enterprise baseada em mensagens ou replicação em três camadas baseada em

streams com uma grande variedade de fontes de dados back-end.

Os pontos fortes do SQL Anywhere Studio são suas múltiplas opções de

acesso a dados (ASA e Ultralite), de sincronização (SQL Remote e Mobilink Server) e de

suporte para desenvolvimento (via ODBC, JDBC e outros drivers nativos). Poderia se apontar

como ponto fraco o fato do produto não prover suporte nativo a dispositivos RIM Blackberry

e à plataforma Java 2 Micro Edition (J2ME), dois ambientes que parecem ter sido feitos para

operar com a opção Ultralite.

5.2 Oracle Database Lite 10g

A Oracle estende o alcance de seu software de grid computing para

gerenciar dispositivos móveis com lançamento no início de 2005. O Oracle Database Lite 10g

permite o gerenciamento de dispositivos móveis (como wireless laptops, handhelds e outros

sistemas) por extensões de um grid de computação, em vez de usar aplicativos especializados

com capacidades de gerenciamento de mobilidade construídas e oferece aos dispositivos

móveis recursos comuns para sistemas críticos. Com o Mobile Manager no Oracle Database

Lite 10 g, os clientes podem administrar e monitorizar toda a sua cadeia móvel facilmente a

partir de uma única console baseado na Web, fornecendo recursos avançados para gestão de

aplicações, sistema, segurança e dispositivos. Os recursos incluem completa gestão do ciclo

de vida das aplicações para desenvolver e implementar aplicações móveis; recursos avançados

de diagnóstico, configuração e bloqueio de dispositivos de cliente;

Page 34: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

34

Viabilizando o acesso persistente a informações e aplicações fundamentais

sem necessidade de ligação contínua aos sistemas empresariais de back end, o Oracle

Database Lite 10 g possibilita aos utilizadores aumentar a eficiência, a produtividade e a

resposta das forças de trabalho móveis, além de reduzir custos e melhorar a satisfação do

cliente.

Este banco de dados inclui suporte para ferramentas Java e .NET como

Oracle JDeveloper 10 g e Microsoft Visual Studio .NET, permitindo aos programadores

aproveitar o seu conhecimento e experiência no uso das ferramentas. O Oracle Database 10 g

Lite também suporta a interface Microsoft ADO.NET, proporcionando aos usuários uma

maior integração, produtividade e desempenho entre os ambientes Java e .NET. As aplicações

podem ser criadas com diversas linguagens de programação, como Java, C/C++ e Visual

Studio para plataformas que incluem Linux, Microsoft Windows CE/NT/2000/XP/2003, Palm

OS e Pocket PC.

5.3 DB2 Everyplace

Os dispositivos móveis são projetados para realizar tarefas específicas, ao

contrário da natureza mais geral dos computadores pessoais. O Banco de Dados DB2

Everyplace foi projetado especificamente para dispositivos móveis. Suporta SQL básico e

operações relacionais como: Join, Group By, Order By, múltiplas chaves primárias e Foreign

Key, Funções Agregadas e Constraints. A indexação avançada fornece um impulso notável no

desempenho, de tabelas médias às tabelas grandes do DB2 Everyplace.

A fim de maximizar a utilidade usando menos quantidade de recursos,

somente a funcionalidade, a mais relevante para bases de dados móveis, foi incluída. As

funções do tipo: subqueries, creating views, triggers, store procedures e as funções definidas

pelo usuário não estão incluídas. No banco de dados está disponível somente o suporte a

Single Byte Character Sets (SBCS), Double Byte Character Sets (DBCS), E UNICODE.

DB2 Everyplace suporta o desenvolvimento de aplicações para banco de

dados em C/C++ e em Java. As interfaces Call Level Interface (CLI) e a Java Database

Connectivity (JDBC) estão disponíveis. O banco de dados DB2 Everyplace está disponível

para o Palm Os, Windows Ce/Pocket PC, Psion EPOC, Embedded Linux e QNX Neurino.

Query- By_Exemple é fornecido com o banco de dados DB2 Everyplace para usar no cliente.

Page 35: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

35

Figura 6: QBE CLP sendo usado para a localização de nomes em uma agenda (Adaptado de Doze et al., 2003).

Na Figura 6 é apresentado como o QBE pode ser usado para ver os dados de

tabelas do DB2 Everyplace através das barras de rolagem da tela ou dos botões para cima e

abaixo do dispositivo móvel. O QBE pode ser utilizado para atualizar dados, inserir novos

dados, ou apagar dados das tabelas. Usuários mais avançados podem usar o QBE command-

line processor (CLP) para entrar e executar comandos SQL personalizados pelo usuário (Doze

et al. 2003).

5.4 SQL Server CE

Segundo Cortêz e Lifschitz (2002), o Microsoft SQL Server CE é um banco

de dados relacional para o desenvolvimento de aplicações para os equipamentos móveis. Pode

ser utilizado como um banco de dados local quando seu host está desconectado ou como um

cliente acessando o servidor durante a conexão com a rede fixa. Suas principais características

são:

• Suporta a sintaxe de consulta da (SQL);

• Fornece uma API para acesso ao SGBD Microsoft SQL Server;

• Possui otimização de consultas e processamento de transações;

Page 36: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

36

• Projetado para ser integrado com a plataforma Microsoft .NET;

• Possui seu tamanho em torno de 1 Mb;

• Provê serviços de criptografia para segurança dos dados;

• Mantêm interoperabilidade com os produtos da IBM, Oracle e Sybase;

• Suporta as plataformasWin32 e Windows CE, Linux, Palm OS, QNX

Neutrino e Symbian EPOC.

5.5 Aplicações

As aplicações de Computação Móvel podem ser vistas em todas as áreas

que requerem mobilidade e comunicação, sem grandes custos e com excelentes vantagens.

• Clínicas Dentárias ou Médicas

Para aumentar a eficiência e a produtividade dos dentistas ou médicos de

uma clínica em detrimento da qualidade de atendimento utilizou-se softwares de banco de

dados, PDAs com Palm OS e bluetooth. Os dados cadastrais são registrados no desktop

(MS Access) na chegada do paciente, e através da sincronização, são enviados para o

palmtop. Os dados clínicos então são registrados no palmtop, já na sala clínica. Através de

uma nova sincronização, os dados estarão sempre completos em ambos os dispositivos.

Ao término da segunda sincronização, a ficha e os dados cadastrais podem ser novamente

acessados no desktop e enfim impressos. Os ganhos reais são consultas mais rápidas,

maior número de atendimentos diários e melhor controle de acompanhamento dos

tratamentos, sem perda de qualidade(PalmBrasil).

• Tratamento de doentes no hospital IPC (The Hospitalist Company)

Os profissionais hospitalares da IPC coordenam os exames de doentes, os

tratamentos e serviços prestados dentro do hospital através do banco de dados Oracle

Database Lite. Trabalhando de forma verdadeiramente móvel sem escritórios ou mesas de

trabalho. Os profissionais hospitalares usam PDAs para capturar os dados pessoais dos

doentes, diagnosticar, definir procedimentos e outras informações, enquanto fazem as suas

rondas. Estas informações são transmitidas pelo PDA via modem ou tecnologia wireless

para serem sincronizadas com as bases de dados de back end, enquanto outras

Page 37: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

37

informações importantes sobre novos doentes ou doentes de outros colegas entram no

PDA(Oracle-Notícias, 2005).

• Aplicação comercial

Para melhorar o atendimento dos clientes que são atendidos por vendedores

externos “móveis”, facilitando tanto a vida dos vendedores, que não precisarão andar mais

com calhamaços de tabelas de preços e talões de pedidos, bem como das empresas que terão,

a cada transmissão, todos os pedidos já inclusos no seu sistema empresarial, e com isso,

poderão ter agilidade na atualização de preços, verificação de duplicatas pendentes dos

clientes, estoques atualizados, etc. Os pedidos, cadastros, etc. poderão ser feitos no Palm e

transmitidos para o computador via sincronização (Cia. do Software, 2005).

• Aplicações para cobertura de desastre (Policiais, Bombeiros e Ambulâncias)

As ambulâncias são equipadas com dispositivos que dão a informação

correta do estado do paciente, para que os equipamentos sejam preparados e o pessoal de

emergência no hospital fique em alerta (Compera, 2005).

• Aplicações em monitoramento de animais

Monitoramento de animais, mais especificamente cavalos, através de PDA’s

(Palm’s) onde os responsáveis pelo tratamento dos animais monitoram suas tarefas

diárias, como escovação, medicação e higiene. E gerenciados periodicamente pelos

veterinários e pelos administradores.

6 CONCLUSÃO

A utilização de um Banco de Dados Móvel permite uma redução nos custos

de uma organização, onde os sistemas envolvidos e as novas tecnologias de armazenamento

de dados podem se inter-relacionar, fornecendo aos usuários finais informações mais

consistentes.

Mas há alguns problemas neste ambiente que precisam ser minizados ou

resolvidos para que os Sistemas de Banco de Dados possam ser utilizados no sentido de

Page 38: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

38

expandir, cada vez mais, a utilização dos sistemas de informações, propiciando que em

qualquer lugar e em qualquer hora o usuário móvel possa ter acesso à informação.

A inserção dos Sistemas de Bancos de Dados na computação móvel não é

algo trivial. Pois a garantia da consistência e integridade dos dados, principal função dos

SGBDs, não pode ser totalmente aplicado no ambiente móvel, uma vez que suas operações

por dependerem de dois ambientes, em muitos momentos desconectados, não permitem que

as transações de banco de dados possam ser executadas como nos seus modelos centralizados

ou distribuídos. Assim, constantes pesquisas se fazem necessárias no sentido de desenvolver

novos modelos de transações que possam garantir as operações móveis, mantendo os

requisitos básicos dos SGBDs em relação aos dados que armazenam.

A tecnologia de Banco de Dados Móveis deve acompanhar a computação

sem fio num processo de melhoria contínua, permitindo aumentar a produtividade, oferecendo

velocidade, liberdade e flexibilidade e recursos necessários para que equipes de trabalho

tenham acesso aos dados a qualquer hora e em qualquer lugar.

REFERÊNCIAS BIBLIOGRÁFICAS

AMADO, Paulo G. F.; 2002. Bancos de Dados Móveis: visão geral, desafios e soluções

atuais. Recife. Trabalho de Graduação em Banco de Dados (Graduação em Ciência da

Computação – Centro de Informática). Universidade Federal de Pernambuco.

CHRYSANTHIS, Panos K. e PITOURA, E; 2000. Mobile and wireless database access for

pervasive computing. ICDE - Proceedings of the 16th International Conference on Data

Engineering, 28 Fev. - 3 Mar., San Diego, California, USA . p. 694-695.

CIA. DO SOFTWARE; 2005. Disponível em

http://www.ciadosoftware.com.br/produto.asp?produto=1404&dep=10&cat=1. Acesso em 12

set. 2005.

COMPERA; 2005. Mobilidade multiplica os braços das equipes de campo. Disponível em

http://www.compera.com.br/imprensa_view.asp?cat=1&id_noticia=351. Acesso em 12 set.

2005.

Page 39: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

39

COMPERA; 2005. Haras Polana em Campos do Jordão inova em tecnologia sem fio.

CORTÊS, Sérgio da C. e LIFSCHITZ, Sérgio; 2002. Banco de dados para um ambiente de

computação móvel. XXIII Congresso da Sociedade Brasileira de Computação – SBC 2003.

Disponível em www.inf.ucp.br/nsb/downloads/arquivos/BDAmbientesCompMovel.pdf.

Acesso em 05 set. 2005.

CUNHA, Miguel et. al.; 2001. Mobisnap: Um sistema de Base de Dados para Ambientes

Móveis. In the Actas da Conferência de Redes de Computadores 2001 (CRC'2001),

Novembro. Disponível em http://www-asc.di.fct.unl.pt/MobiSnap/. Acessado em 02-09-2005.

DOZE, Adriana F.; KREDENS ,Kelvin; HANNINGER, Michaelli e LORBIESKY, Polyana

L.; 2003. Palm Top e Banco de Dados. Disponível em http://www.pr.gov.br/

batebyte/edicoes/2002/bb118/estagiario.htm. Acessado em 02-09.2005.

DUNHAM, M.; KUMAR, V.; 1998. Defining Location Data Dependency, Transaction

Mobility and Commitment. Relatório Técnico 98-CSE-01, Department of Computer Science

and Engineering, Southern Methodist University, Fevereiro, p. 1-22. Disponível em

http://citeseer.ist.psu.edu/kumar98defining.html. Acesso em 02 set. 2005.

ELMASRI, Ramez e NAVATHE, Shamkant B.; 2000. Fundamentals of Database Systems.

Addison-Wesley.

FITZPATRICK, Paul; 2002. Introduction to Mobile and Wireless Communications Systems.

University of Melbourne.

FORMAN, George H.e ZAHORJAN, John; 1994. The challenges of Mobile Computing.

Computer, Volume 27, N. 4, Abril p. 38 – 47. Disponível em: http://portal.acm.org/

citation.cfm?id=620018#. Acesso em 05 set. 2005.

GEYER, Cláudio Fernando R; AUGUSTIN, Iara e YAMIN, Adenauer C. ISAM – Infra-

estrutura de Suporte às Aplicações Móveis – Computação Móvel. Disponível em

http://www.inf.ufrgs.br/~isam/paginaDefComputacaoMovel.html. Acesso em 01 set. 2005.

IMIELINSKI, Tomasz; BADRINATH, B.R.; 1993. Mobile Wireless Computing: Solutions

and Challenges in Data Management. Department of Computer Science, Rutgers University,

Page 40: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

40

U.S. Disponível em: http://citeseer.ist.psu.edu/imielinski93mobile.html. Acesso em 05 set.

2005.

ITO, Giani C.; 2001. Bancos de dados móveis: uma análise de soluções propostas para

gerenciamento de dados. Florianópolis. Dissertação (Mestrado em Ciência da Computação).

Universidade Federal de Santa Catarina.

KUMAR, Vijay; 2000. Mobile and Wireless Database Systems, tutorial da 10th Conference on

Management of Data (COMAD 2000), Dezembro.

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.

NASSU, Eugenio A. e FINGER, Marcelo; 2000. O Significado de “Aqui”em Sistemas

Transacionais Móveis. I Workshop SIDAM (Sistemas de Informação Distribuída de Agentes

Móveis), Outubro, p. 55-63. Disponível em http://www.ime.usp.br/~sidam/worksidam/

artigos/. Acesso em 01. set. 2005.

NEVES, N.; FUCHS, W. K.; 1997. Adaptive Recovery for mobile environments.

Communications of the ACM, 40 (1): 68 – 74, Janeiro. Disponível em:

http://citeseer.ist.psu.edu/neves97 adaptive.html. Acesso em 02 set. 2005.

NOVELL, Inc. Novell AppNotes. How does Replication Work, junho de 1997. Disponível

em: http://developer.novell.com/research/appnotes/1997/june/02/03.htm. Acesso em 02 set.

2005.

ORACLE-NOTICIAS, Oracle anuncia o Oracle Database Lite 10 g, a primeira base de

dados a alargar o grid computing à mobilidade nas empresas. Disponível em

http://www.oracle.com/global/pt/corporate/news/news_fy05_01/fy05011001.html. Acesso em

02 set. 2005.

ÖZSU, M. Tamer e VALDURIEZ, Patrick; 1999. Principles of Distributed Database

Systems. Prentice-Hall, Inc.

PALMBRASIL. Banco de Dados Sempre Atualizado com Sincronização Bluetooth.

Disponível em http://www.palmbrasil.com.br/materias/pm-1.html. Acesso em 05 set. 2005.

Page 41: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

41

PITOURA, Evaggelia e BHARGAVA, Bharat; 1994. Revising transaction concepts for

mobile computing. In First IEEE Workshop on Mobile Computing Systems and Applications,

p. 164 – 168, Santa Cruz, CA, US. Disponível em http://citeseer.ist.psu.edu/pitoura94

revising.html. Acesso em 05 set. 2005.

PITOURA, Evaggelia; SAMARAS, George; 1998. Data Management for Mobile Computing,

Kluwer Academic Publishers, Volume 10. Disponível em http://citeseer.ist.psu.edu/pitoura98

data.html. Acesso em 01 set. 2005.

PITOURA, Evaggelia e SAMARAS, George; 2001. Locating Objects in Mobile Computing.

IEEE Transactions on Knowledge and Data Engineering. Volume 13. N. 4 . P. 571-592.

Disponível em: http://www.cs.uoi.gr/~pitoura/distribution/location-survey.os. Acesso em 05

set. 2005.

SATYANARAYANAN, M. et.al.; 1990. Coda: a highly available File System for a

Distributed Workstation Environment. IEEE Transactions on Computers. Volume 39 (4),

Abril, P: 447 – 459. Disponível em: http://ieeexplore.ieee.org/search/wrapper.jsp?

arnumber=54838. Acesso em 05 set. 2005.

SILBERCHATZ, Abraham; KORTH, Henry F. e SUDARSHAN, S.; 1999. Sistema de Banco

de Dados. Makron Books.

YEO, L. H.; ZASLAVSKY, A.; 1994. Submission of Transactions from Mobile Workstations

in a Cooperative Multidatabase Processing Environment. Proceedings of Distributed

Computing Systems, p. 372-379, Junho. Disponível em

http://ieeexplore.ieee.org/xpl/tocresult.jsp?isnumber=7460&isYear=1994&count=75&page=1

&ResultStart=25. Acesso em 02 set. 2005.

Page 42: Curso de Bacharelado em Informática › ~olguin › 4463-semin › g5-monografia.pdf · 2008-09-29 · de 9,6 Kbps a 384Kbps (Fitzpatrick,2002 apud Amado, 2002) . Uma aplicação

42

Perguntas:

1) Quais as propriedades que originam os vários desafios na tecnologia de computação

móvel?

Portabilidade, que envolve tratar dos problemas de energia, riscos de perda e extravio de

dados, interface com o usuário limitada, capacidade de armazenamento em disco.

Comunicação, que envolve a alta taxa de desconexão, a alta variação de largura de banda, a

rede heterogênea e riscos de segurança.

Mobilidade, envolve alguns problemas que devem ser considerados como: Migração de

endereço, informação dependente de localidade e migração de localidade.

2) Quais as principais características de um banco de dados móveis?

Dentre as principais características pode-se citar:

• Vários bancos de dados interligados por uma rede de comunicação sem fio;

• Acesso de um computador móvel (host móvel) a um banco de dados residindo em um

computador fixo (host fixo) ou em um computador móvel;

• O computador móvel pode desempenhar o papel de cliente ou servidor de banco de

dados;

• Os bancos de dados são autônomos, distribuídos e podem ser heterogêneos.

3) Em relação ao gerenciamento de dados, quais as considerações e variações devem ser

levadas em conta ao serem aplicadas em banco de dados móveis?

Distribuição de dados e replicação, modelos de transação, processamento de consultas,

recuperação e tolerância à falhas, projeto de banco de dados móveis, serviços baseados na

localização, divisão do trabalho e segurança.