FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Es verdad Delfino. Pero precisamente los aspectos tenidos en cuenta par allegar a hacerlo como estoy intentándolo son:
PROS 1. Al tenerlo en un campo BLOB de la base de datos no tengo que preocuparme de la sincronización entre la base de datos y los ficheros externos a ella. Dicho en otras palabras, no tendría que preocuparme de la integridad referencial entre los registros de la tabla y los ficheros extrenos a la base de datos. 2. Esto evita tener que dar permisos a directorios en el servidor y compartir dichos directorios. Evitaría todo el tema de seguridad de windows con los directorios y los usuarios que pueden leer o escribir en dichos directorios y así que se puedan eliminar los ficheros accidentalmente o intensionadamente por algún usuario de la red CONTRAS 1. El tamaño de la base de datos se hará muy grande y poco manejable en poco tiempo. Estamos hablando de que los ficheros pueden ocupar bastante tamaño teniendo en cuenta que son ficheros de imágenes y con mucha resolución y que no se puede degradar dicha resolución en ningún caso. 2. El hecho de tener una base da datos muy grande hace que todos los procesos en dicha base de datos sean más lentos, eso sin tener encuenta como va a manipular dicho fichero el propio windows y el Firebird. Llegados a este punto, me decanto por la variante de guardar los ficheros externos a la base da datos. He encontrado una forma de hacer que se graben dichos ficheros en el lado servidor. Lo he hecho con un TParam. Estoy desarrollando la idea y en cuanto lo tenga funcionando y operativo al 100 % lo subo para que veaís la solución y de paso si encontraís algún error, me ayudéis a corregirlo. Un saludo |
#2
|
|||
|
|||
Cita:
Lo unico es q el tiempo de Backup/Restore se hace mas largo.. |
#3
|
||||
|
||||
Tal y como comenta Delfino, el tamaño de la base de datos no es problema, no va a decaer el rendimiento por ese motivo, el único inconveniente es hacer un backup de un archivo tan grande, pero también tienes el inconveniente de que si tienes ficheros separados en otro directorio también tendrías que hacer otro backup aparte de los mismos.
También veo por los comentarios que has puesto, que el servidor sería windows, gran error. Debe ser linux, no sólo por seguridad, estabilidad, etc. sino también por rendimiento, que es muchísimo mayor que el que pueda ofrecer windows. Garantizado. Usando linux tienes la ventaja del sistema avanzado de permisos, por lo que si decides usar la opción de tener los ficheros fuera de la base de datos, puedes tener un usuario con permisos para leer/escribir en ese directorio y nadie más pueda entrar en el mismo, ni a mirar. En cuanto al tamaño de la BD, todavía no has dicho nada, pero hay casos comentados de tamaños enormes, es un tema que hemos tratado en diversas ocasiones, por ejemplo aquí. |
#4
|
||||
|
||||
Sinceramente yo elegiría en método de Indexar los documentos en la DB y guardarlos en el Sistema de Archivos.
Pero no has mencionado cuál sería el ciclo de vida de los documentos. Luego que los subes al servidor, los tedrás que servir de nuevo? Permitirás futuras modificaciones? Un ciclo de vida así es complicado de controlar Código:
--- SUBIR --> ^ | | | MODIFICAR | | | SERVIR <-------- Con respecto a lo que comenta Casimiro, sobre instalar el servidor en Linux -opinión que comparto-, no sé si DataSnap funcione sobre Linux. En mi caso, implemento los servidores de aplicaciones en LAMP o una variante de esta configuración (Python, PostgreSQL, Linux y el servidor que mejor se adapte a mis necesidades -normalmente Apache-). Saludos! |
#5
|
||||
|
||||
Como dije al principio, la DB puede tomar un tamaño enorme por no decir bestial, como dice la frase divide y vencerás.
La idea es crear una base de datos que contenga nombre de base de datos externas que estarán relacionadas con los pacientes. Me explico, está la base de datos principal que se llamara: HospitalXY dentro de ésta están las tablas en común (Pacientes, Medicos, Habitaciones, etc), y la base de datos que contendrán nombre de base de datos relacionada con los pacientes, que se llamará ArchivosXY. Cita:
(BASEDATOS = nombre de como se llamara la base de datos que estará relacionada con el paciente) (PACIENTEID = paciente que has ingresado en la base de datos pacientes) Cita:
A la hora de realizar las secuencias SQL's no habrá ningún problema, eje.
No necesitas hacer un WHERE en la segunda adoQry por paciente ya que sabemos cual es el, pero puede hacer un WHERE por IDSCANNER para sólo mostrar uno o más de uno. Espero haber contribuido en tu proyecto y despejar dudas Un saludo. P.D.: Esto está realizado en SQL SERVER
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber. Última edición por olbeup fecha: 29-02-2012 a las 09:43:34. |
#6
|
||||
|
||||
Cita:
Si tuviera que 'dividir', en todo caso, tendría una Bd para todo menos para los documentos. En otra BD estarían únicamente los documentos. Lo del tamaño de la BD, habría que definir lo de "bestial", he visto algunos usuarios que llaman bestial a unos pocos de megas, para mí "normal" sería rondando los 50 GB, muy grande puede ser varios cientos de gigabytes, y 'bestial' sería rondando el Tera. No sabemos qué tamaño tendrá la BD que va a tratar Aldo porque no ha dado cifras. Incluso recuerdo ahora a un usuario que llamó 'bestial' a una tabla en .dbf que tenía casi cuatro mil registros. Todo es relativo en este mundo |
#7
|
||||
|
||||
Efectivamente, en la otra base de datos estarían los (JPGE, DOC, XLS, EMAIL, ETC) ya que estas son las que van a crecer.
Sobre el tamaño de las bases de datos, de momento no me he manejado con tamaño grandes, para mi grande es a partir del 1Gb Aldo, el motor de base de datos SQL SERVER 2005 EXPRESS es el que yo utilizo no te vale para ti, porque el tamaño máximo de esta base de datos es de 4Gb y para el 2008 EXPRESS creo que lo han subido a 16Gb, con estos tamaños ni para café. Un saludo
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber. Última edición por olbeup fecha: 29-02-2012 a las 13:02:49. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Crear catalogo con IBSQLMonitor | learning_delphi | Firebird e Interbase | 11 | 02-10-2011 11:18:28 |
Impresión de catálogo con imagenes | quali | Impresión | 0 | 16-04-2011 16:13:02 |
Catalogo de Colonias | mRoman | Varios | 10 | 22-03-2011 19:10:00 |
generar e imprimir catalogo | fartycl | Impresión | 3 | 11-10-2005 17:57:35 |
Ventana Auxiliar O Catalogo | juan-manuel-gl | Conexión con bases de datos | 1 | 09-02-2005 21:54:24 |
|