Ver Mensaje Individual
  #8 (permalink)  
Antiguo 03/05/2006, 12:36
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por x_women
gracias.

y ahora otra consulta que es mejor guardar tus fotos en la base de datos o guardarla como archivo.
Todo tiene sus pro´s y sus desventajas:

Almacenado los archivos sólo el nombre del archivo en la BBDD:
Beneficios:
* No importa el tamaño del archivo .. sólo guardamos la referencia del nombre = menos "peso" de nuestras BBDD y en consecuencia mejor tiempo de respuesta para las consultas SQL.

Desventajas:
* No es posible accesos a los archivos desde otros lenguajes tipo "de escritorio" (Visual Basic) por lo menos no en forma "directa" (desde la consulta SQL sólo).
* Hay que tener cuidado con los permisos de acceso a los archivos (protegiendolos de alguna forma: .htaccess? .. colocandolos fuera del "document_root" y creando scripts que los lean .. etc).

Almacenando en "binario" el archivo en un campo de la BBDD (integro):

Beneficios:
* Agiliza los respaldos/Copias de seguridad. Todo centralizado y tratado como "datos" que son .. nada de "ftp's" para bajar por un lado archivos y por otro lado genear los ".sql" con datos/estructura .. Al fin y al cabo todo son datos cara a nuestra aplicación.
* No hay problemas con permisos de archivos a la hora de instalar/mover archivos.
* El "acceso" a estos archivos está condicionado bajo las consultas SQL a realizar a la BBDD y los permisos que tenga el usuario que las hace sobre ella (mejor control directamente sobre la BBDD y sus usuarios).
* Puedes acceder a los archivos desde cualquier tipo de apliación y lenguaje. No sólo con "PHP" .. también por ejemplo con una aplicación en Visual Basic de "escritorio" donde NO se pueden apuntar a los archivos por una ruta relativa tipo: http:// .... Se trabaja todo en "binario".

Desventajas:
* En general cualquier BBDD "pesada" se vuelve lenta en su respuesta. Mysql por ejemplo nunca fué buena para gestionar gran cantidad de datos en un campo sólo .. tal vez otros "RDBMS" lo hagan mejor .. pero en general el rendimiento cae.

Por otro lado .. no he hecho la prueba pero si que he escuchado que en ciertos casos, un acceso a un archivo "binario" (pequeño tal vez .. en una BBDD no "saturada" o al "limite") se consigue algo más de rendimiento (mejor tiempo de acceso) al archivo. Por supuesto .. ahí tendrías que hacer pruebas y evaluarlo tu mismo, no conozco por mi parte estudios al respecto.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 03/05/2006 a las 12:42