imagenes en una BD de SQLServer

30/11/2006 - 20:57 por SergioT | Informe spam
Hola
en la aplicacion que estoy desarrollando necesito guardar imaganes que son
fotos y firmas de los clientes, para verificaciones visuales en caja, pero
la base de datos que tengo ya es bastante grande, estaba pensando crear una
BD nueva y en ella tener una tabla que tenga los siguientes campos
"CodCliente,Foto1,Foto2,Firma", esto implicara qiue si quiero ver la foto
de un cliente deberé hacer algo así

select *
from Cliente C
inner join BDFotos.dbo.ClienteImagenes F
ON C.CodCli=F.codcli

la pregunta es:

es buena idea separar la base de datos de imagenes de la de datos? por el
peso sobre todo,
influye en el desempeño de la consulta el hecho de tener imagenes
almacenadas en la BD y en otra BD

Que me sugieren para manejar las imagenes de la forma mas eficiente y segura
posible

Espero sus comentario, gracias de antemano
Salu2
Sergio T.

Preguntas similare

Leer las respuestas

#6 Maxi
02/12/2006 - 14:34 | Informe spam
Hola, claro que me ha solucionado problemas de escalabilidad, por ej de
cambiar de un server a otro y lo unico que cambie en las aplicaciones fue la
cadena de conexion, tambien me ha permitido en casos donde queria tener mas
fino el tunig separar en filegroups.
En otras palabras pude escalar hacia arriba en los servers sin mucho
esfuerzo desde el lado de las aplicaciones, me ha pasado tambien en planes
de contingencia que me ha ayudado bastante ya que hice un restore en otro
server y tenia todo funcionando de inmediado. O sea, a nivel administrativo
para mi es una ventaja y tambien me ha pasado en varios clientes que algunos
auditores me han cuestionado de tener los documentos sin control , o sea:
como se entaraba la aplicacion que en el filesystem habia un cambio, se que
es un tema muy discutido de hecho yo antes lo ponia fuera, pero cuando
espece a despejar algunas cuestiones como que decian q era lento, etc, etc,
eso jamas me ha pasado y pude ver que SQLServer esta bien preparado para
trabajar con este tipo de datos dentro, de hecho ahora en 2005 se puede
hacer lo mismo con el CLR, XML, etc, estos reciden dentro y no hace
referencia el motor a partes externas :)


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
"Miguel egea" wrote in message
news:%
¿eso te ha solucionado problemas de escalabilidad? De veras no imagino
como, meter esos objetos tiene ventajs e inconvenientes que hemos
discutido demasiadas veces, pero desde luego no mejoran en absoluto la
escalabilidad de un sistema., al menos yo no logro ver como


Saludos
Miguel Egea

"Maxi" wrote in message
news:
jjaa, sigo opinando y ejecutando lo mismo, objetos dentro de la bdd y las
imagenes tambien :) esto me ha solucionado problemas de escalabilidad y
tambien pude en algunos casos asegurar la operacion ya que algunos
audiores ISO me han traido dolores de cabeza con el otro metodo ;)


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
"Gustavo Larriera (MVP)" wrote in message
news:
SergioT wrote:


es buena idea separar la base de datos de imagenes de la de datos? por
el peso sobre todo,
influye en el desempeño de la consulta el hecho de tener imagenes
almacenadas en la BD y en otra BD

Que me sugieren para manejar las imagenes de la forma mas eficiente y
segura posible



Busca en este mismo foro, hemos discutido varias veces ese tema. Las
opiniones son diversas y todas válidas.

Personalmente, prefiero tener las imágenes almacenadas en el file system
y no en tablas de la base de datos.

El amigo Maxi opina lo contrario, si es que aún no se ha convencido de
algo mejor :-) :-) :-)


Gustavo Larriera, MVP
Solid Quality
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Blog: http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.








Respuesta Responder a este mensaje
#7 SergioT
02/12/2006 - 14:57 | Informe spam
Hola

veo que hay dilema pero yo estoy de acuerdo con Maxi en guardar las imagenes
en la BD, sobre todo por seguridad de las imagenes. Mi pregunta en realidad
es ¿ Que les parece crear una BD paralela con tablas que colo guarden
imagenes? por ejemplo tendré imagenes de clientes, productos, documenteos
pero no quiero cargar la BD principal con esto ya que no siempre utilizare
las imagenes peor las tablas maestras de clientes, productos por que son de
alto uso, asi que meterle un campo de imagenes no me parece muy buena idea y
crear una tabla de imagenes en la misma BD no me parece tampoco conveniente
por eso estoy pensando crear una BD de imagenes con 2 0 3 tablas que tengan
la llave y la imagen, que les parece????

salu2 y gracias por los comentarios
Sergio

"SergioT" escribió en el mensaje
news:
Hola
en la aplicacion que estoy desarrollando necesito guardar imaganes que son
fotos y firmas de los clientes, para verificaciones visuales en caja, pero
la base de datos que tengo ya es bastante grande, estaba pensando crear
una BD nueva y en ella tener una tabla que tenga los siguientes campos
"CodCliente,Foto1,Foto2,Firma", esto implicara qiue si quiero ver la foto
de un cliente deberé hacer algo así

select *
from Cliente C
inner join BDFotos.dbo.ClienteImagenes F
ON C.CodCli=F.codcli

la pregunta es:

es buena idea separar la base de datos de imagenes de la de datos? por el
peso sobre todo,
influye en el desempeño de la consulta el hecho de tener imagenes
almacenadas en la BD y en otra BD

Que me sugieren para manejar las imagenes de la forma mas eficiente y
segura posible

Espero sus comentario, gracias de antemano
Salu2
Sergio T.

Respuesta Responder a este mensaje
#8 Maxi
02/12/2006 - 15:13 | Informe spam
Hola Sergio, no es mala idea, yo lo que si hago es separarlas en filegroups
distintos


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
"SergioT" wrote in message
news:
Hola

veo que hay dilema pero yo estoy de acuerdo con Maxi en guardar las
imagenes en la BD, sobre todo por seguridad de las imagenes. Mi pregunta
en realidad es ¿ Que les parece crear una BD paralela con tablas que colo
guarden imagenes? por ejemplo tendré imagenes de clientes, productos,
documenteos pero no quiero cargar la BD principal con esto ya que no
siempre utilizare las imagenes peor las tablas maestras de clientes,
productos por que son de alto uso, asi que meterle un campo de imagenes no
me parece muy buena idea y crear una tabla de imagenes en la misma BD no
me parece tampoco conveniente por eso estoy pensando crear una BD de
imagenes con 2 0 3 tablas que tengan la llave y la imagen, que les
parece????

salu2 y gracias por los comentarios
Sergio

"SergioT" escribió en el mensaje
news:
Hola
en la aplicacion que estoy desarrollando necesito guardar imaganes que
son fotos y firmas de los clientes, para verificaciones visuales en caja,
pero la base de datos que tengo ya es bastante grande, estaba pensando
crear una BD nueva y en ella tener una tabla que tenga los siguientes
campos "CodCliente,Foto1,Foto2,Firma", esto implicara qiue si quiero ver
la foto de un cliente deberé hacer algo así

select *
from Cliente C
inner join BDFotos.dbo.ClienteImagenes F
ON C.CodCli=F.codcli

la pregunta es:

es buena idea separar la base de datos de imagenes de la de datos? por el
peso sobre todo,
influye en el desempeño de la consulta el hecho de tener imagenes
almacenadas en la BD y en otra BD

Que me sugieren para manejar las imagenes de la forma mas eficiente y
segura posible

Espero sus comentario, gracias de antemano
Salu2
Sergio T.





Respuesta Responder a este mensaje
#9 Miguel egea
02/12/2006 - 15:57 | Informe spam
Maxi, con todos mis respetos, eso que dices no es escalabilidad, vamos por
partes.

Separar en filegroups puede mejorar el rendimiento para tu situación, pero
como hemos discutido muchas veces, por la arquitectura de SQL las imágenes
se grabarán 2 veces una en el log y otra en los archivos de datos, por tanto
es al menos el doble de coste de disco (es más incluso).

Escalar implica que se admitan más conexiones, y metiendo las imágenes en la
base de datos jamás jamás jamás hará que sea más escalable.

¿escalar hacia arriba? Te refieres a ¿ escalabilidad vertical? confundes el
concepto, eso solo quiere decir que se puede poner una máquina más grande.

Tenerlo en el filesystem implica quizá una pequeña sobrecarga en el control
de permisos y todo esto es cierto, pero consumirá casi seguro menos recuros

Lo demás que dices puede afectar a la disponibilidad (nunca a la
escalabilidad) pero aún así es mucho más que discutible.

En resumen, creo que simplemente tienes un error de conceptos, eso que
describes puede ser muchas cosas ,pero nunca nunca es escalabilidad.

En cualquier caso yo no estoy ni de acuerdo ni en desacuerdo con meter
imágenes y o documentos en la BBDD. Solo que me sorprendío muchísimo que
dijeses que es más escalable. No lo es, te equivocas, has confundido el
concepto, pero :-) no pasa nada..

Saludos
Miguel Egea


"Maxi" wrote in message
news:%
Hola, claro que me ha solucionado problemas de escalabilidad, por ej de
cambiar de un server a otro y lo unico que cambie en las aplicaciones fue
la cadena de conexion, tambien me ha permitido en casos donde queria tener
mas fino el tunig separar en filegroups.
En otras palabras pude escalar hacia arriba en los servers sin mucho
esfuerzo desde el lado de las aplicaciones, me ha pasado tambien en planes
de contingencia que me ha ayudado bastante ya que hice un restore en otro
server y tenia todo funcionando de inmediado. O sea, a nivel
administrativo para mi es una ventaja y tambien me ha pasado en varios
clientes que algunos auditores me han cuestionado de tener los documentos
sin control , o sea: como se entaraba la aplicacion que en el filesystem
habia un cambio, se que es un tema muy discutido de hecho yo antes lo
ponia fuera, pero cuando espece a despejar algunas cuestiones como que
decian q era lento, etc, etc, eso jamas me ha pasado y pude ver que
SQLServer esta bien preparado para trabajar con este tipo de datos dentro,
de hecho ahora en 2005 se puede hacer lo mismo con el CLR, XML, etc, estos
reciden dentro y no hace referencia el motor a partes externas :)


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
"Miguel egea" wrote in message
news:%
¿eso te ha solucionado problemas de escalabilidad? De veras no imagino
como, meter esos objetos tiene ventajs e inconvenientes que hemos
discutido demasiadas veces, pero desde luego no mejoran en absoluto la
escalabilidad de un sistema., al menos yo no logro ver como


Saludos
Miguel Egea

"Maxi" wrote in message
news:
jjaa, sigo opinando y ejecutando lo mismo, objetos dentro de la bdd y
las imagenes tambien :) esto me ha solucionado problemas de
escalabilidad y tambien pude en algunos casos asegurar la operacion ya
que algunos audiores ISO me han traido dolores de cabeza con el otro
metodo ;)


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
"Gustavo Larriera (MVP)" wrote in message
news:
SergioT wrote:


es buena idea separar la base de datos de imagenes de la de datos? por
el peso sobre todo,
influye en el desempeño de la consulta el hecho de tener imagenes
almacenadas en la BD y en otra BD

Que me sugieren para manejar las imagenes de la forma mas eficiente y
segura posible



Busca en este mismo foro, hemos discutido varias veces ese tema. Las
opiniones son diversas y todas válidas.

Personalmente, prefiero tener las imágenes almacenadas en el file
system y no en tablas de la base de datos.

El amigo Maxi opina lo contrario, si es que aún no se ha convencido de
algo mejor :-) :-) :-)


Gustavo Larriera, MVP
Solid Quality
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Blog: http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.












Respuesta Responder a este mensaje
#10 Miguel egea
02/12/2006 - 15:59 | Informe spam
También disiento, si las separas en distintas bases de datos tendrás que
coordinar los backups o puedes tener el mismo problema que si estuviese en
el filesystem. ¿no?.

Si lo que buscas es rendimiento metelas en distintos filegrousp y asegurate
que esos filegroups tienen distintos discos y controladoras, de lo contrario
tampoco mejorará el rendimiento.

Saludos
Miguel EGea
"Maxi" wrote in message
news:
Hola Sergio, no es mala idea, yo lo que si hago es separarlas en
filegroups distintos


Saludos

[Microsoft MVP SQL Server]
www.sqlgurus.org
Buenos Aires - Argentina
"SergioT" wrote in message
news:
Hola

veo que hay dilema pero yo estoy de acuerdo con Maxi en guardar las
imagenes en la BD, sobre todo por seguridad de las imagenes. Mi pregunta
en realidad es ¿ Que les parece crear una BD paralela con tablas que colo
guarden imagenes? por ejemplo tendré imagenes de clientes, productos,
documenteos pero no quiero cargar la BD principal con esto ya que no
siempre utilizare las imagenes peor las tablas maestras de clientes,
productos por que son de alto uso, asi que meterle un campo de imagenes
no me parece muy buena idea y crear una tabla de imagenes en la misma BD
no me parece tampoco conveniente por eso estoy pensando crear una BD de
imagenes con 2 0 3 tablas que tengan la llave y la imagen, que les
parece????

salu2 y gracias por los comentarios
Sergio

"SergioT" escribió en el mensaje
news:
Hola
en la aplicacion que estoy desarrollando necesito guardar imaganes que
son fotos y firmas de los clientes, para verificaciones visuales en
caja, pero la base de datos que tengo ya es bastante grande, estaba
pensando crear una BD nueva y en ella tener una tabla que tenga los
siguientes campos "CodCliente,Foto1,Foto2,Firma", esto implicara qiue
si quiero ver la foto de un cliente deberé hacer algo así

select *
from Cliente C
inner join BDFotos.dbo.ClienteImagenes F
ON C.CodCli=F.codcli

la pregunta es:

es buena idea separar la base de datos de imagenes de la de datos? por
el peso sobre todo,
influye en el desempeño de la consulta el hecho de tener imagenes
almacenadas en la BD y en otra BD

Que me sugieren para manejar las imagenes de la forma mas eficiente y
segura posible

Espero sus comentario, gracias de antemano
Salu2
Sergio T.









Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida