Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Estadual de Montes Claros - UNIMONTES Centro de Ciências Exatas e Tecnológicas - CCET Sistemas de Informação BANCO DE DADOS MÓVEIS Montes Claros 2013 BRUNO PEREIRA JADER GABRIEL MARCELA MAYARA PATRICK PIERRE BANCO DE DADOS MÓVEIS Trabalho apresentado como instrumento de avaliação da disciplina de Banco de Dados II sob a orientação do professor Leandro. Montes Claros 2013 1. Introdução O relativo avanço tecnológico nas últimas décadas tem levado o ser humano a um nível computacional cada vez maior e, por sua vez, as necessidades ou dificuldades referentes ao surgimento dessa tecnologia também acabam desencadeando mais avanços. Podemos ver este efeito claramente no desenvolvimento de softwares nos últimos anos, devido ao surgimento dos processadores multicore – que exigiram mudanças significativas em softwares e sistemas operacionais, devido a um fator crucial: os desenvolvidos até então não eram especializados em trabalhar com multiprocessamento, desperdiçando boa parte da capacidade de processamento da UCP, que ficava sem uso. Nos últimos anos temos presenciado um aumento significativo da utilização da computação portátil, fundamentalmente por permitir ao usuário estabelecer comunicação ou gerenciar seu trabalho enquanto se movimenta. O site Olhar Digital estima que, somente no ano de 2012 tenham sido vendidos 8,9 milhões de portáteis no Brasil – notando-se que a quantidade em 2011 havia sido ainda maior, e estando entre eles somente notebooks, netbooks e ultrabooks. Além destes, ainda podemos acrescentar celulares e similares. Este número nos mostra a importância do desenvolvimento da infraestrutura, novas tecnologias e metodologias de comunicação digital sem fio e de baixo custo, para possibilitar que estes dispositivos estejam conectados a World Wide Web independente de sua localização – o que é conhecido como Computação Ubíqua. Quando falamos em redes wireless e conexão de diferentes tipos de dispositivos a uma rede computacional encontramos outra dificuldade: portabilidade – que nada mais é que a capacidade do software de migrar de uma plataforma para outra, podendo ser compilado ou executado em diferentes arquiteturas (hardware e software). O mesmo acontece com a base de dados, e disso surge a necessidade de que os clientes possam acessar seus bancos de dados de qualquer lugar, e de qualquer sistema, e é onde deparamos com o conceito de Banco de Dados Móveis. 2. Resumo A evolução e popularização dos dispositivos móveis fez com que se tornassem um meio de comunicação extremamente importante, aumentando também a necessidade do desenvolvimento de aplicações capazes de funcionar neles tão bem neles como em dispositivos fixos. Essa evolução nos trouxe os aparelhos – como celulares, tablets ou GPS – que tem sido utilizados cada vez mais para acessar a rede mundial de computadores. Este trabalho tem como objetivo a apresentação, definição e demonstração da importância de uma tecnologia que auxilia bastante no desenvolvimento de aplicações para esses dispositivos: os bancos de dados móveis e os efeitos trazidos pela introdução às mesmas na atualidade. 3. Mobilidade Computacional 3.1. Computação e Comunicação Móvel Podemos visualizar a Computação Móvel como uma tecnologia que faz uso da computação e comunicação para permitir que os usuários trabalhem fora de seus ambientes físicos. Essa mobilidade permite a um contador, por exemplo, continuar uma planilha que estava desenvolvendo no local de trabalho em casa ou em uma cafeteria sem necessariamente ter de se conectar a internet ou da utilização de dispositivos de armazenamento. Dispositivos móveis, como conhecemos, utilizam bateria como meio energético ao invés de terem sempre que estar ligados a uma tomada, tendo uma fonte de energia mais limitada. O problema disso é que, na medida em que os componentes de hardware evoluem, seu consumo energético tende a aumentar, fazendo com que o tempo de duração dessas baterias diminua. Este problema, porém, se torna pequeno se levado em consideração as vantagens da utilização da computação móvel e, de acordo com Silberschatz, pode ser reduzido com o uso de broadcasts 1 de dados agendados, reduzindo a necessidade desses dispositivos móveis transmitirem consultas. É importante ressaltar que o termo “dispositivo móvel” envolve mais que somente notebooks, netbooks e ultrabooks, mas também celulares, tablets e similares. A área de telefonia móvel vem obtendo grande avanço também, e hoje existem celulares com a capacidade de processamento mais alto que alguns computadores mais antigos. 3.2. Wireless A comunicação sem fio foi o principal impulsionador para a criação dos Bancos de Dados Móveis. Redes sem fio, em geral, utilizam-se de ondas 1 Broadcast, ou “radiodifusão” é o processo pelo qual o sinal é transmitido – ou difundido – uma única vez – ao invés de enviar um sinal por vez. eletromagnéticas – podendo ser ondas de rádio, luz infravermelha, laser, ondas sonoras e outros – como modo de propagação de dados, podendo assim estabelecer a conexão entre dois pontos distintos. Redes Wireless nada mais são que um grupo de dispositivos interconectados através de um dos meios de propagação sem fio, se tornando uma tecnologia destinada principalmente para os dispositivos portáteis, uma vez que a vantagem em se ter tal aparelho cairia quando tocássemos no assunto “conectividade” – comprar uma máquina que, para se conectar a uma rede seria sempre necessária a utilização de cabos perde um pouco da vantagem em ser “portátil”. O modo de propagação de dados sem fio mais utilizado são as ondas de rádio – ondas eletromagnéticas propagadas por uma antena. O crescimento da utilização deste modo de propagação veio exatamente pelo seu baixo custo em comparação com as outras, ter um alcance considerável e não necessitar de um posicionamento fixo durante a conexão – o que ocorre com o infravermelho, apesar deste ser mais rápido. Hoje se tornou comum a ideia de você chegar a uma lanchonete ou shopping e se conectar por meio de um Acess Point, também chamado de AP, tendo acesso à internet. O único problema encontrado para a utilização de ondas de radio é que o sinal pode sofrer um enfraquecimento – devido a reflexão, refração, difração ou absorção das mesmas por obstáculos – fazendo com que nem sempre elas tenham a velocidade ou alcance esperados. 4. Bancos de dados móveis A grande busca por praticidade envolve totalmente o conceito de Computação Móvel, fazendo das redes wireless um importante meio de acesso. O desenvolvimento de diferentes tipos de aparelhos fez com que a internet não fosse a rede mundial unicamente de computadores, mas também de celulares ou tablets, o que deixa a Computação Úbiqua cada vez mais evidente. Como descrito anteriormente, os bancos de dados móveis surgiram a partir, principalmente, dessa necessidade, de se ter uma base de dados compatível com as variadas arquiteturas utilizadas hoje, podendo funcionar tanto em um notebook quanto em um aparelho celular. De uma forma mais prática, poderíamos dizer que estes são simplesmente a portabilidade aplicada aos bancos de dados.Silberschatz comenta, na quinta edição de seu livro Sistemas de Banco de Dados: A computação móvel provou ser útil em muitas aplicações. Muitos viajantes a negócio utilizam computadores laptop para que possam trabalhar e acessar dados em viagem. Os serviços de entrega utilizam computadores móveis para auxiliar no rastreamento de encomendas. Os serviços de resposta a emergência utilizam computadores móveis na cena dos desastres, emergências médicas e coisas desse tipo para acessar informações e entrar com dados pertencentes à situação. Os telefones celulares estão cada vez mais se tornando dispositivos que oferecem não apenas serviços telefônicos, mas também computadores móveis, permitindo acesso por e-mail e pela Web. Novas aplicações de computadores móveis continuam a surgir. (Silberschatz, 2006) Silberschatz cita ainda as consultas dependentes de local, para demonstrar a importância do desenvolvimento de bancos de dados móveis. Esse tipo de consulta normalmente é utilizada por computadores móveis que necessitam da captação da localização atual do aparelho, podendo essa localização ser feita como entrada pelo usuário ou por um sistema de posicionamento global (GPS) – que vem sendo bastante utilizado. Um exemplo bastante conhecido dessas aplicações são os sistemas de informação a viajantes, que oferecem informações sobre hotéis, restaurantes e serviços de beira de estrada, entre outros mais próximos do local onde o usuário se encontra. O ideal ao desenvolver um sistema desse nível seria que ele funcionasse bem independente do dispositivo móvel utilizado. Apesar disso, ainda existem algumas dificuldades na utilização dos Bancos de Dados Móveis. Tais como velocidade e alcance das conexões sem fio – que podem ser restringidas por obstáculos ou não alcançarem o exigido para determinadas situações, podendo resultar em demoras em consultas ou cancelamento de transições por desconexão do mesmo por ter saído da área de alcance. 4.1. Arquiteturas Encontramos outro fator importante para a analise e da importância de se ter um banco de dados que possa funcionar em diferentes plataformas pode ser visualizada na arquitetura da rede, pois ela influenciará diretamente no modo de acesso a base de dados. 4.1.1. Cliente / Servidor Figura 1- Fonte: Rainone (2003) Esse tipo de arquitetura possibilita ao cliente – nesse caso, a unidade que busca determinado serviço – se conectar a um sistema de gerenciamento de banco de dados que esteja hospedado em uma Unidade Servidora – como o nome indica, a unidade hospedeira ou prestadora do serviço. Um navegador web poderia ser considerado um exemplo de arquitetura Cliente/Servidor – sendo ele um programa “cliente” executando e acessando informações armazenadas em um servidor web. Podemos assim dizer que a camada cliente fica responsável unicamente em fazer a interface com o cliente, enquanto a maioria das instruções são processadas e armazenadas no servidor. Deste modo, podemos definir o “cliente” como uma das unidades móveis já citadas enviando e recebendo pacotes de dados para um servidor fixo na rede, fazendo da capacidade de portabilidade do SGBD utilizado essencial para o bom funcionamento do sistema como um todo. 4.1.2. Cliente / Agente Servidor / Servidor Figura 2 - Fonte: Rainone (2003) Este modelo se difere do anterior pela introdução de um agente, que funcionará como um receptor e transmissor de dados entre a aplicação cliente com uma unidade servidora. Deste modo, a troca de dados é feita entre cliente/agente e agente/servidor, fazendo com que os dados enviados sempre passem pelo agente servidor. Podemos dizer que, em uma arquitetura Cliente/Agente Servidor/Servidor, o papel do agente é simular a presença do cliente na rede fixa do Servidor, reduzindo as falhas na comunicação – principalmente devido a desconexão de um dos dois, pois, caso isso ocorresse, o agente poderia simplesmente armazenar temporariamente os dados enviados para depois retransmiti-los. Essa arquitetura, porém, falha no suporte a transferência de arquivos no sentido Cliente – Servidor. Quando ocorre a desconexão na rede, o servidor continua enviando o sinal, o que não ocorre com o cliente móvel, que terá a operação cancelada. Podemos dizer com isso que o Agente Servidor só permite a otimização da transferência de dados no sentido Servidor – Agente Servidor – Cliente. 4.1.3. Cliente / Agente Cliente / Servidor Essa arquitetura também surgiu a partir da Cliente/Servidor e se baseia na inclusão de um agente, que dessa vez ficará alojada no Cliente, ao contrário do modelo anterior. A função desse agente será a de ampliar as funcionalidades do Cliente, principalmente quando falamos em Cliente Móvel – que normalmente possuem menos poder computacional. De acordo com Rainone (2003): Entre as muitas atividades específicas de uma aplicação que os agentes podem desempenhar, podemos destacar, de uma forma mais genérica, as seguintes atividades: Administrar a memória cache no cliente móvel; Disponibilizar memória progressivamente para o cliente móvel durante o pouco tráfego da rede (prefetching); Copiar parte do banco de dados para a memória do cliente móvel (hoarding); Otimizar a comunicação entre o cliente móvel e sua estação de base. Figura 3Fonte: Rainone (2003) 4.1.4. Cliente / Agente Cliente / Agente Servidor / Servidor Figura 4Rainone (2003) Podemos visualizar este modelo como a junção dos dois modelos anteriores. Nele, haverá a inserção de dois agentes, o agente cliente e o agente servidor, na tentativa de acabar com as limitações dos dois modelos e otimizando a transmissão de dados nos dois sentidos. A única limitação deste é que as aplicações deveram ser desenvolvidas de forma genérica, para que possam funcionar tanto no cliente quanto no servidor. 5. Conclusão A chegada da “era da informação” trouxe inúmeras evoluções tecnológicas e notamos, como demonstrado por Karl Fisch em seu famoso vídeo Did you know?: estamos vivendo em tempos exponenciais. Neste caso, isso ocorre em função do aumento da competitividade devido a inserção de novas tecnologias no mercado, e a busca dos clientes por comodidade faz com que estas se envolvam cada vez mais com aspectos relativos à portabilidade. Com isso, percebemos a necessidade inerente de se manter a integridade e conectividade de um banco de dados com variados dispositivos e arquiteturas – efeito que damos o nome de portabilidade –, principalmente pelas facilidades na utilização de redes wireless. 6. Bibliografia MATEUS, G. LOUREIRO, A. Introdução à Computação Móvel. Disponível em: http://homepages.dcc.ufmg.br/~loureiro/cm/docs/cm_livro_1e.pdf RAINONE, F. Bancos de Dados Móveis. Disponível em: http://grenoble.ime.usp.br/movel/bdmoveisflavia.pdf SALVODI, T. Carrion, E. Banco de dados móveis: Novas áreas para pesquisa. Disponível em: http://www.cin.ufpe.br/~ejvm/11-2256-1.pdf Silberschatz, A. Sistemas de Banco de Dados. 5ª Edição. Rio de Janeiro: Elsevier, 2006. SILVA, R. Manual: Tecnologia Wireless. Disponível em: http://webeduc.mec.gov.br/linuxeducacional/manuais/Tecnologia%20Wireless.pdf
Compartilhar