Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/02/2012, 21:17
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 5 meses
Puntos: 85
Respuesta: Implicancias de insertar documentos en la BD

Depende de varios factores, guardar los documentos dentro de la base es más complejo de programar, el rendimiento en las operaciones de lectura, inserción o modificación depende en gran parte de las librerías para acceder a la base (sqloledb, etc), pero tienes la ventaja de una seguridad centralizada para todos los datos, no tienes que preocuparte si se suben dos documentos con el mismo nombre, es más simple implementar un modelo de versiones de documentos y en algunos casos tienes la posibilidad de indexar el contenido del documento y hacer búsquedas sin tener que extraerlo de la base de datos. En este caso tienes como ejemplo las aplicaciones SCM tipo Subversion.

Por otro lado, guardar los documentos fuera de la base definitivamente es más fácil de programar y el rendimiento depende solamente de la velocidad del disco, pero tienes la desventaja de, doble gestión en la seguridad de los datos y espacio de almacenamiento, al guardar un documento tienes que validar que no exista otro con el mismo nombre o que el nombre tenga caracteres especiales no soportados por el sistema operativo y debas renombrar el documento, el filesystem no aporta nada para implementar versiones de documentos y además no tiene una gestión de lock / wait cuando dos usuarios modifican el mismo documento simultáneamente. En este caso, el ejemplo sería una aplicación que guarde las fotos de los usuarios.

En mi opinión, aunque no tengo detalle de los requerimientos, un gestor documental para una clínica de salud sugiere que la seguridad y privacidad de los datos, las versiones de los documentos modificados y la capacidad de búsquedas son factores críticos, por lo que optaría por tener los documentos dentro de la base de datos.

Saludos