From: | "Marco Antonio Frias Butron" <marcoantoniofrias(at)gmail(dot)com> |
---|---|
To: | "Crispin T(dot)" <cris(dot)emis(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: almacenar en bd o no? |
Date: | 2008-05-26 19:11:40 |
Message-ID: | 33e030de0805261211l28669692j7da311255ca15bc7@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Mon, May 26, 2008 at 2:29 AM, Crispin T. <cris(dot)emis(at)gmail(dot)com> wrote:
> hola tengo un problema resulta que tengo un sistema en java con bd postgres
> 8.2 y todo me va de maravilla pero empieza a preocuparme un asunto, resulta
> que por performance y por no cargar demasiado la bd no almacene las fotos de
> unos inmuebles en al bd pero me resulta complicado al momento de hacer
> backups ya que las imagenes las agarro como archivos y pues copiar varios
> archivos y restaurar varios archivos ademas de los datos de la bd se me hace
> mucho trabajo y mucho tiempo pero no me anime a almacenarlos en un tipo oid
> porque por cada inmueble se manejan alrededor de 30 fotos png de 600x500
> aproximadamente, ademas que antes el sistema hera monolitoco (corria en una
> unica pc) pero ahora el negocio crecio y se necesita que corra en una lan y
> bueno nose como hacer que una aplicación java cargue archivos que estan en
> otra pc (no veo seguro compartir la carpeta de los archivos) y me estoy
> animando a guardar las imagenes en la bd
>
> dados los casos ¿que harian ustedes en este caso?
Hola, a mí me ocurrió algún momento este problema, yo tengo una
aplicación a nivel nacional que utiliza postgresql y java (hibernate,
jsf, otros).
> en el caso de sugerirme que guarde las imagenes en la bd
Para guardar archivos dentro de la DB y que tenga un buen
funcionamiento intervienen a mi criterio varios factores: peso del
archivo, número de subidas/bajadas del archivo, capacidad servidor
(hardware + software), ancho de banda (aunque en tu caso en lan)... si
los archivos no son grandes < 7MB, subidas < 30 y bajadas < 50 al
día, 1-4GB de RAM con Slackware Linux **opcional** te debería
funcionar sin problemas... la aplicación que desarrollamos ya va por
el año en producción, 1400 archivos y de tamaño 2.7GB y funciona
bien!.
> ¿hay forma de sacar backup's de solo algunas tablas?
pg_dump tiene la opción -t, esta opción hace que el respaldo sólo lo
tome en cuenta una o varias tabla o utilizando expresiones regulares.
(creo que esto de expresiones solo funciona desde 8.2)... los comandos
quedarían algo así:
respaldo de dos tablas en formato texto plano:
$ pg_dump -d <base de datos> -U <usuario> -t tabla1 -t tabla2 -F p > dump.sql
respaldo de todas las tablas que comiencen con log en formato texto plano:
$ pg_dump -d <base de datos> -U <usuario> -t log* -F p > log_dump.sql
dale una leída a:
http://www.postgresql.org/docs/current/interactive/app-pgdump.html
> en caso de no guardar en la bd las imagenes ¿que solucion me sugieren para
> cargar imagenes desde otra pc(sin compartir la carpeta)?
Guardando en el sistema de archivos (disco duro), sólo debes hacer que
la aplicación recibir el archivo en el servidor y lo escriba en el
disco duro en una carpeta con los permisos adecuados (clase File, etc)
y esa dirección lo guardas en una tabla que indique las direcciones de
donde recuperarlas luego y no es necesario que este compartido ni nada
por el estilo... aunque esto acarrea el problema de sincronización
entre tu tabla y el sistema de archivos....
Ambas soluciones no afectan al usuario ya que ve lo mismo... el que
asume el problema es la aplicación en la forma de guardar/recuperar.
--
Saludos y abrazos...
Marco Antonio Frias Butrón
Slackware Linux User
Linux Registered User #356229 - http://counter.li.org/
From | Date | Subject | |
---|---|---|---|
Next Message | Marcos Saldivar | 2008-05-26 19:36:39 | Re: recomendacion para BD grande |
Previous Message | Gilberto Castillo Martínez | 2008-05-26 19:11:25 | Re: Concatenar registro y regresar solo uno |