|
August 21, 2015
|

Banco de Dados para Dispositivos Móveis

Uma base de dados em um servidor, como as armazenadas em um Oracle, SQLServer, Postgre, etc, podem ser bem grandes dependendo da necessidade da aplicação. Já uma base em um dispositivo móvel não pode ser tão grande. Por mais que os dispositivos atuais tenham boa capacidade de armazenamento, não se comparam às das máquinas usadas como servidores de bancos de dados.

Sabe-se também que é comum que as aplicações para dispositivos móveis se comuniquem com aplicações em um servidor web e precisem trocar dados com a base de dados no servidor. Obviamente, nem todos os dados da base de dados do servidor deve ser baixada para o dispositivo; apenas os dados que podem ser usados pelo usuário da aplicação móvel. A programação desse envio de dados deve ser feita com cautela para não aumentar desnecessariamente o tempo de sincronização e de carga nas tabelas do dispositivo, além de diminuir o tempo de consultas e de uso do espaço de armazenamento.

Ao final de certas operações que alteram o banco de dados no dispositivo, é preciso sincronizá-lo com a base no servidor. Então, o programa móvel deve prover uma maneira de saber quais linhas foram inseridas, alteradas e apagadas e replicar as operações na base do servidor.

No TotalCross, essa tarefa de sincronizar linhas das tabelas do dispositivo com o servidor é facilitada pelo Litebase, que tem a classe RowIterator, que permite iterar pelas linhas e saber qual é nova, alterada, apagada e sincronizada. Obviamente, não se deve dar um purge na tabela antes da sincronização, pois as linhas apagadas serão efetivamente removidas (antes disso, apenas eram marcadas como apagadas, tornando a remoção apenas lógica).

Já o SQLite não possui essa mesma facilidade. Para sincronizar os dados com tabelas no servidor, é preciso que as tabelas tenham uma coluna extra com seu estado e a remoção só deve ser feita depois da sincronização, já que esse banco pode reutilizar o espaço de linhas removidas a qualquer momento. Além disso, não há como se acessar dados de linhas removidas no SQLite

Comments

More articles

Pesquisa de mercado: Por que ela é importante para o desenvolvimento de apps?

November 19, 2018

Como transformar um website em aplicativo?

November 14, 2018

É possível instalar aplicativos Android no Windows?

November 9, 2018

A importância de escolher o público alvo ideal na hora de criar um aplicativo

November 8, 2018

LEAVE A COMMENT