Tenho uma aplicação que utiliza 3 tabelas em um bd mas apenas uma tem um grande volume de informações (200.000 por hora), porém esses dados só são utilizados durante 1 dia e depois apagados, eu estou estudando retirar o bd e utilizar, talvez, arquivo texto, qual a melhor solução?
Remover o DB
6 Respostas
Depende de como você acessa os dados. A leitura é sequencial? tem acesso por chave indexada? consulta on-line ou processamento batch?
Olá
200 mil por hora? 200 mil consultas/hora? Parece um volume enorme. E como pretende fazer este volume de consultas em um arquivo texto?
[]s
Luca
Já pensou em banco embarcado (tal como o H2)?
vc faz sua base na hora, ela fica armazenada num arquivo local e depois, é só fechar a conexão dar um file.delete() no arquivo bd criado… talvez o H2 tenha até uma opção para apagar automaticamente o arquivo assim q a aplicação é finalizada.
O bom do H2 é q ele já vem uma interface acessível via browser… é ótima p/ procurar bugs, martelar a base, simular estados, etc…
Na realidade eu iriei gravando os registros - podendo quebrar em vários pequenos arquivos - e ao final do dia fazer uma sumarização dos dados.
Olá
200.000 gravações/hora?
[]s
Luca
Certo. Para este tipo de processamento realmente um arquivo texto sequencial resolve. Gravar, ler, classificar…
Mas para decidir mesmo pense que um banco de dados pode oferecer outras características interessantes como: segurança de acesso, acesso concorrente, garantia de integridade, indexação para leitura classificada, além de algumas funções para sumarização que podem ajudar a obter o resultado desejado com apenas uma instrução Select…
Se for uma aplicação “missão crítica” que você precisa garantir resultados confiáveis… eu adotaria o banco de dados.