Tuvimos una gran aplicación de LOB que proporcionaba información de identificación de los cajeros de banco sobre el miembro que estaba frente a ellos. Nuestros datos textuales se almacenaron en SQL Server. Los datos de imagen se almacenaron en archivos. El campo de la base de datos simplemente tenía un nombre de archivo. Este enfoque funciona bien si está detrás del firewall. Leer y escribir archivos es fácil. El problema es la gestión de archivos. Debe asegurar el sistema de archivos para que las personas al azar no puedan ver el directorio. Además, las copias de seguridad son más complicadas con archivos de imagen sueltos. Tienes que hacer una copia de seguridad de la base de datos y los archivos de imagen. Los campos pueden hacer referencia a rutas que ya no existen. Por ejemplo, un técnico de TI decide mover la carpeta de imágenes y ahora todas las referencias en el archivo db están rotas. Si su aplicación necesita pasar información a través del firewall, le sugiero que almacene imágenes en SQL Server utilizando el mencionado almacenamiento FileStream.
Almacenar las imágenes en la base de datos nos habría ahorrado un poco de dolor. Solo tendríamos que hacer una copia de seguridad de la base de datos, sería más seguro, las referencias nunca se romperían y no hubiéramos tenido que saltar por los aros para obtener archivos de la red fuera del firewall.
Flickr usa la tienda de base de datos. Tal vez ellos saben una cosa o dos sobre esto. http://code.flickr.com/blog/2010/02/08/using-abusing-and-scaling-mysql-at-flickr/ – Yada