bases de datos con archivos incluidos

05/10/2004 - 16:45 por Mara | Informe spam
hola a todos:

tengo un problema de diseño de una aplicacion / base de datos y quisiera
pediros consejo si esta forma es optima

simplificando la aplicacion, donde residen mis dudas:

la idea de la aplicacion es:

de una base de datos cojo la lista de items mas unos cuantos atributos, los
cuales seran evaluados por diferentes personas y mas de una vez cada uno, la
evaluacion se realiza segun unas determinadas caracteristicas (poniendoles
nota de 0 a 10) , asi mismo se podran adjuntar uno o posiblemente mas de un
archivo a un item-evaluacion

la aplicacion es simple excepto que el tamaño sera muy grande, hablando de
20.000 items iniciales pudiendo llegar a 100.000, quizas mas, y con varias
evaluaciones cada uno
los items tiene identificador unico en la actual base de datos que utilizare
como source

mi idea es pues:
- una tabla donde alamaceno (con key = identificador de item) los item mas
los atributos de este (una sola vez por item) (copia local de parte del
source pues tan solo me interesan alunos item para su posterior evaluacion)
- otra tabla donde alamaceno (con key = item + numero evaluacion) las
distintas notas para cada caracteristica (siempre las misma para todos los
items) y el indice de archivo
- y una tercera tabla donde almaceno los archivos (tipo de datos: imagen)
junto su descripcion e indice, (con key = indice de archivo)

mis dudas son pues:
- como haria si a un determinado item se quieren introducir mas de un
archivo?
- convendria almazenar los archivos externamente y no en el sql ? (un ftp o
similar) por que?


decir que la aplicacion sera desarrollada en web (no por mi) y los archivos
pudieran tener un tamaño de pocos Kbs supuestamente (documentos de texto,
docs, pequeñas fotos, algun esquema o tabla en excell), aunque nadie me
asegura que no se "mal-use" con archivos de gran tamaño

gracias por vuestras consideraciones
 

Leer las respuestas

#1 Rodrigo Corral [MVP]
05/10/2004 - 17:21 | Informe spam
Lee entre lineas...

hola a todos:



Hola!!!!

tengo un problema de diseño de una aplicacion / base de datos y quisiera
pediros consejo si esta forma es optima

simplificando la aplicacion, donde residen mis dudas:

la idea de la aplicacion es:

de una base de datos cojo la lista de items mas unos cuantos atributos,
los
cuales seran evaluados por diferentes personas y mas de una vez cada uno,
la
evaluacion se realiza segun unas determinadas caracteristicas (poniendoles
nota de 0 a 10) , asi mismo se podran adjuntar uno o posiblemente mas de
un
archivo a un item-evaluacion

la aplicacion es simple excepto que el tamaño sera muy grande, hablando de
20.000 items iniciales pudiendo llegar a 100.000, quizas mas, y con varias
evaluaciones cada uno
los items tiene identificador unico en la actual base de datos que
utilizare
como source



No veo un problema en ese numero de registros para SQLServer en una máquina
mediamente potente y con suficiente memoria.

mi idea es pues:
- una tabla donde alamaceno (con key = identificador de item) los item mas
los atributos de este (una sola vez por item) (copia local de parte del
source pues tan solo me interesan alunos item para su posterior
evaluacion)
- otra tabla donde alamaceno (con key = item + numero evaluacion) las
distintas notas para cada caracteristica (siempre las misma para todos los
items) y el indice de archivo
- y una tercera tabla donde almaceno los archivos (tipo de datos: imagen)
junto su descripcion e indice, (con key = indice de archivo)

mis dudas son pues:
- como haria si a un determinado item se quieren introducir mas de un
archivo?



La clave seria tan simple como un autonumerico + item.

- convendria almazenar los archivos externamente y no en el sql ? (un ftp
o
similar) por que?




Seguro que hay mucha gente en contra, pero yo soy partidario de dejarlos
fuera en este caso. El mótivo es que te facilitara la vida a la hora de
visualizar los documentos en el navegador y manejarlos desde asp.net. El
principal problema, el tema de que las copias de seguridad de la base de
datos no son suficientes para proteger todos los datos que maneja la
aplicación.

decir que la aplicacion sera desarrollada en web (no por mi) y los
archivos
pudieran tener un tamaño de pocos Kbs supuestamente (documentos de texto,
docs, pequeñas fotos, algun esquema o tabla en excell), aunque nadie me
asegura que no se "mal-use" con archivos de gran tamaño



La aplicación asp.net puede controlar facilmente el tamaño maximo de los
archivos para evitar un uso abusivo. Tambien podria usar compresión a la
hora de almacenalos de manera transparente al usuario.

gracias por vuestras consideraciones




Un saludo
Rodrigo Corral González [MVP]

FAQ de microsoft.public.es.vc++
http://rcorral.mvps.org

Preguntas similares