Dúvida sobre arquivamento no BD
Pessoal, estou com uma dúvida que pode ser até simples para alguns, mas que está atrapalhando um pouco no meu projeto.
Estou trabalhando em um projeto de arquivos digitalizados, mas não sei bem como seria a melhor forma de arquivamento no BD, importo o arquivo como PDF mesmo ou utilizo de outros meios para ter esses arquivos com menor espaço de armazenamento?
Estou trabalhando em um projeto de arquivos digitalizados, mas não sei bem como seria a melhor forma de arquivamento no BD, importo o arquivo como PDF mesmo ou utilizo de outros meios para ter esses arquivos com menor espaço de armazenamento?
Francisco Nascimento
Curtidas 0
Melhor post
Marcio Souza
13/11/2018
Olá Francisco, não se salva arquivos em banco de dados, é um grande erro. Em alguns meses seu banco de dados vai levar segundos para executar qualquer operação devido aos arquivos. O ideal é armazenar os arquivos em diretórios e no banco você apenas salva informações sobre o arquivo e informações que te levem ao diretório onde o arquivo foi salvo para você poder recupera-lo.
GOSTEI 1
Mais Respostas
Francisco Nascimento
13/11/2018
Obrigado amigo
GOSTEI 0
Emerson Nascimento
13/11/2018
Dependendo do caso, se salva arquivos no banco de dados, sim.
Você geralmente precisará de uma tabela para os dados do arquivo, como data de criação, alteração, tamanho, autor, nome do arquivo com extensão, palavra-chave, e o que mais você achar necessário (geralmente dados que poderão ser utilizados em pesquisas), e outra com o arquivo em si. Porque assim: porque ao fazer uma busca, a pesquisa será rápida. O processamento/tráfego será um pouco maior somente se você abrir o arquivo (dependendo do tamanho do arquivo).
Por que gravar o arquivo no banco de dados? Porque o backup do banco guardará tudo. E ao precisar mover o banco de dados, toda a informação já estará lá.
Se você deixar os arquivos armazenados em diretórios, você precisará ter backup também desses diretórios. E quando precisar fazer qualquer manutenção, terá de lembrar de levar também os diretórios onde estão os arquivos. Além disso, se alguém tiver acesso ao diretório do arquivos, poderá comprometer a integridade da informação se apagar ou renomear um arquivo.
Mas como eu disse, DEPENDE do tipo de arquivo que você está armazenando e da proposta do sistema.
Eu tenho um banco no SQLServer onde armazeno o arquivo. São imagens e arquivos texto, e não há qualquer problema de performance.
Você geralmente precisará de uma tabela para os dados do arquivo, como data de criação, alteração, tamanho, autor, nome do arquivo com extensão, palavra-chave, e o que mais você achar necessário (geralmente dados que poderão ser utilizados em pesquisas), e outra com o arquivo em si. Porque assim: porque ao fazer uma busca, a pesquisa será rápida. O processamento/tráfego será um pouco maior somente se você abrir o arquivo (dependendo do tamanho do arquivo).
Por que gravar o arquivo no banco de dados? Porque o backup do banco guardará tudo. E ao precisar mover o banco de dados, toda a informação já estará lá.
Se você deixar os arquivos armazenados em diretórios, você precisará ter backup também desses diretórios. E quando precisar fazer qualquer manutenção, terá de lembrar de levar também os diretórios onde estão os arquivos. Além disso, se alguém tiver acesso ao diretório do arquivos, poderá comprometer a integridade da informação se apagar ou renomear um arquivo.
Mas como eu disse, DEPENDE do tipo de arquivo que você está armazenando e da proposta do sistema.
Eu tenho um banco no SQLServer onde armazeno o arquivo. São imagens e arquivos texto, e não há qualquer problema de performance.
GOSTEI 1