Los servidores de aplicaciones pueden almacenar archivos cargados en el sistema de archivos del servidor y persistir solo en las rutas de archivo en una base de datos. Obtener una copia de seguridad consistente de dicho conjunto de datos puede ser difícil.
Este proyecto de muestra utiliza Spring, JPA e Hibernate ORM para almacenar archivos cargados como blobs en una base de datos. MySQL admite blobs de 4 GB, H2 al menos 16 GB de blobs y PostgreSQL incluso 4TB BLOBS. Los blobs nunca se materializan en la memoria.
El uso de blobs para el almacenamiento de archivos puede ser ventajoso ya que esto mantiene el conjunto de datos completo en un solo lugar (la base de datos); Esto proporciona copias de seguridad y sincronización consistentes en un clúster de base de datos.
Dentro de este proyecto, se mencionan algunas técnicas adicionales que podrían ser útiles.