[OFF] - Gravação de arquivos no banco

Olá pessoal

Gente, o que é melhor em termos de performance: ler um arquivo que foi gravado em disco ou chamá-lo diretamente do banco de dados?
Eu sei que a leitura vai ser a mesma, acesso à disco, mas o Oracle ou MySql tem uma “otimização” para isso?
Os arquivos que foram acessados recentemente vão para memória? Porque daí não há mais acesso a disco. Não estou falando de cache do browser, estou perguntando se não vai para o cache do banco ou algo parecido.
Fora que me parece bem mais organizado e seguro colocar tudo no banco do que ficar gravando o caminho em um campo String.