Por que não usar Arquivos?

Autor

Douglas Braga

Nos primórdios da computação, aplicações de banco de dados eram construídas diretamente sobre sistemas de arquivos. Essa abordagem leva aos seguintes problemas:

Problemas com Sistemas de Arquivos

Problema Descrição
Redundância e inconsistência de dados Os dados são armazenados em múltiplos formatos de arquivo, resultando em duplicação de informações em arquivos diferentes
Dificuldade de acesso É necessário escrever um novo programa para realizar cada nova tarefa de consulta
Isolamento de dados Múltiplos arquivos e formatos dificultam consultas integradas
Problemas de integridade Restrições de integridade (ex: saldo > 0) ficam “enterradas” no código dos programas em vez de serem declaradas explicitamente; difícil adicionar novas restrições ou modificar as existentes
Atomicidade de atualizações Falhas podem deixar o banco em estado inconsistente com atualizações parcialmente executadas — exemplo: a transferência de fundos de uma conta para outra deve ser completada ou não acontecer
Acesso concorrente Acesso concorrente é necessário para desempenho, mas acessos simultâneos não controlados levam a inconsistências — ex: duas pessoas lendo um saldo (digamos 100) e realizando saques (digamos 50 cada) ao mesmo tempo
Problemas de segurança Difícil fornecer ao usuário acesso a apenas parte dos dados
Importante

Sistemas de banco de dados oferecem soluções para todos esses problemas.