Por que razão o ToolBerry utiliza uma base de dados real no seu telemóvel
O mesmo motor que um banco utiliza, adaptado ao dispositivo que tem no bolso.
27 de maio de 2026 atualizado

O mesmo motor que um banco utiliza, adaptado ao dispositivo que tem no bolso.
O ToolBerry executa uma verdadeira base de dados SQLite no seu telemóvel, não um ficheiro ou uma folha de cálculo. Fizemos essa escolha porque um negócio de serviços no terreno não é uma lista, é uma rede de ligações, e só uma base de dados consegue responder a perguntas nessa rede em milésimos de segundo, mesmo quando tem anos de dados acumulados. Eis o que isto lhe proporciona.
Porque não guardar simplesmente um ficheiro?
O Manuel gere uma empresa de climatização com cinco camiões nos arredores de Phoenix. Após dois anos a utilizar uma aplicação do tipo «notas», aceder aos dados de um cliente habitual demorava quatro segundos a carregar. Multiplique isso por quarenta consultas por dia e a ferramenta começa a trabalhar contra ele.
Essa é a armadilha da abordagem óbvia. A forma mais fácil de criar uma aplicação offline é descarregar os dados para um ficheiro: uma lista de clientes, uma lista de trabalhos, gravadas na memória do dispositivo. Funciona, e muitas aplicações fazem isso. Mas desmorona-se no momento em que o seu negócio se torna sério.
Um negócio de serviços no terreno é uma rede de ligações. Os clientes têm vários locais. Os locais têm equipamento. O equipamento tem um histórico de manutenção. O histórico de manutenção está ligado às faturas, e as faturas estão ligadas aos pagamentos. A pergunta «mostra-me todos os trabalhos no armazém norte deste cliente nos últimos doze meses, com os totais» não é uma simples pesquisa numa lista. É uma consulta que atravessa cinco ou seis dessas ligações ao mesmo tempo.
Se os seus dados forem apenas um ficheiro, cada pergunta como essa significa carregar o ficheiro na íntegra e analisá-lo manualmente. Isso funciona bem com dez clientes. Com algumas centenas e anos de histórico, a aplicação começa a ficar lenta.
Uma verdadeira base de dados foi concebida precisamente para isto. Ela indexa as ligações e responde a essas perguntas em milésimos de segundo, quer tenha dez clientes ou cinquenta mil.
O que é que ganha, na verdade?
Provavelmente não pensas na tua base de dados enquanto usas a aplicação. É essa a ideia. Eis onde ela se faz sentir no teu dia-a-dia:
Histórico que carrega instantaneamente. Basta tocar num cliente e todo o seu histórico de trabalhos aparece sem o ícone de carregamento e sem o truque de «a carregar itens mais antigos». Os dados já estão indexados, pelo que os recuperar é praticamente instantâneo. Nos nossos próprios testes de junho de 2026, numa base de dados com 10 000 registos, uma consulta ao histórico ordenado foi respondida em cerca de 5 milissegundos - e mantém-se assim tão rápido, quer tenha dez clientes ou cinquenta mil.
Relatórios que respondem instantaneamente. «O que faturei neste trimestre?» «Quais são os clientes que não contactam há mais de um ano?» «Quanto gastei em peças no mês passado?» Estas não são funcionalidades que adicionámos à pressa. São apenas perguntas às quais a base de dados responde porque sabe como tudo se interliga - em milissegundos, não em segundos.
Uma aplicação com a qual cresce, não da qual se cansa. Muitas ferramentas para pequenas empresas parecem ágeis no início, mas ficam lentas assim que lhes introduz dados reais. Utilizamos a mesma arquitetura que alimenta ferramentas que lidam com conjuntos de dados enormes, adaptada para um único utilizador. A velocidade que sente no primeiro dia é a mesma que sentirá daqui a três anos.
O mesmo motor em todos os dispositivos
Uma nota para os curiosos: o motor que utilizamos é o SQLite, a base de dados mais amplamente implementada no mundo, com mais de 1 bilião de bases de dados em uso ativo. Já está a funcionar no seu telemóvel, no seu navegador, na sua televisão e na maioria das aplicações que utiliza diariamente. Foi lançado pela primeira vez em 2000, pelo que conta com 25 anos de aperfeiçoamento, e é testado de acordo com as normas da aviação, com 100% de cobertura de ramos. Os aviões voam com ele. Os bancos processam as suas transações com ele.
Executamo-lo em iPhones, telemóveis Android e em navegadores de computador: o mesmo motor e o mesmo formato de dados nos três. Quer abra o ToolBerry no telemóvel do seu camião ou num portátil no escritório, é a mesma coisa por baixo do capô. Nada é traduzido, nada é reformulado.
A abordagem do navegador é tecnicamente mais complexa, e iremos abordar esse tema separadamente para os leitores interessados nesse aspeto. Para todos os outros, a conclusão é simples. É o mesmo motor comprovado que já alimenta o dispositivo que tem no bolso, utilizado da forma como foi concebido para ser utilizado.
As vantagens e desvantagens honestas
Tentamos ser claros quanto ao custo de cada escolha de arquitetura que fazemos. Eis os custos desta:
A aplicação é alguns megabytes maior. Fornecemos um motor de base de dados, não apenas um cliente leve. Sente-se isso uma vez, na instalação, e nunca mais. Numa ligação moderna, são apenas alguns segundos adicionais.
Algumas coisas pertencem genuinamente a um servidor. Relatórios interempresariais, vistas de despachantes que abrangem várias empresas, coordenação em tempo real numa equipa de grande dimensão: uma base de dados local no telemóvel não foi concebida para isso. Somos honestos quanto a isso e criamos funcionalidades apoiadas por servidor para os casos em que são necessárias.
Isto altera a forma como lançamos atualizações. Quando a estrutura de dados em milhões de dispositivos precisa de evoluir, não existe uma base de dados central que possamos migrar num fim de semana. Cada atualização tem de transferir os seus dados com cuidado. Trata-se de um custo de engenharia real, mas é um problema nosso para resolver, não seu.
O que isto significa para si
Não precisa de se preocupar com nada disto. Esse é, na verdade, o objetivo. Mas da próxima vez que o histórico carregar instantaneamente e a aplicação continuar rápida à medida que o seu negócio cresce, não se trata de magia. É uma base de dados real a fazer aquilo em que as bases de dados reais são boas, a funcionar no dispositivo que tem na mão.
É também por isso que tanto do resto é sequer possível. O modelo de preços «grátis para sempre» funciona porque a base de dados reside no teu dispositivo, e não nos nossos servidores. O «offline-first» funciona porque a base de dados não precisa de rede. O backup «traz o teu próprio armazenamento» funciona porque há um único ficheiro bem definido para fazer o backup. Tudo isto decorre desta única decisão.
Não é a parte mais vistosa do produto. É a base sobre a qual tudo o resto assenta.
Tem alguma dúvida?
Está curioso para saber como isto funciona na sua situação, ou conhece um colega programador que queira aprofundar os detalhes da arquitetura «local-first»? Contacte-nos através do e-mail contact@toolberry.app.
Leitura adicional
- Por que é que o ToolBerry é «offline-first» - por que razão a rede é o nosso plano de backup, e não o seu
- Os teus dados, o teu Dropbox: como funciona o «Bring-Your-Own-Storage» - o que acontece aos teus dados quando a sincronização está ativada
- SQLite - a base de dados mais utilizada no mundo
