Estou com um impasse no atual projeto, sabia eu que um dia iria ter que me deparar com essa situação, não que eu temia ou nada disso, apenas acho interessante discutir aqui com pessoas que já tiveram contato com esse tipo de demanda, de como foi a sua experiência de tratamento de arquivos seja em banco de dados, seja em diretórios, como foi a sua experiência?
Até o momento o que eu acho!
Ainda não trabalhei com um sistema real em tratamento de arquivos, o que fiz foi testes usando o Rails e usando Hibernate. Não foi complicado, seja na hora de persistir um arquivo no banco ou retirar esses dados e formar um arquivo para que o usuário pudesse trabalhar.
O que mais me preocupa é justamente a performance, e esse ponto pode ser mais crítico. O sistema de banco de dados a ser usado será o SQL Server junto com outro banco de dados, que provavelmente será o Derby ou HSQDB.
Há algumas vantagens interessantes em manter arquivo em banco, seria a facilidade de organização, já que estaria em arquivos, na busca seria mais facil trazer, a segurança, já que segueria regras de segurança do SGBD.
O que vocês acham, seria muito válido ouvir várias opiniões. Outra alternativa seria manter arquivos em um servidor SVN ou CVS, no qual uma API de qualquer de um desses controle de versão poderia ser posto na aplicação para fazer checkout, checkin, commit, etc.
