Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Sugerencias sobre la eleccion de bbdd (https://www.clubdelphi.com/foros/showthread.php?t=18026)

taita 30-01-2005 13:48:41

Sugerencias sobre la eleccion de bbdd
 
Hola a tod@s de nuevo:
Hace tiempo que no me conecto (como ya sabeis por culpa de mi proveedor), asi que aprovecho que estoy en un cyber para plantear esta duda:
Estoy empezando un nuevo proyecto, que consiste en una aplicación que funciona como cliente y servidor a la vez. El problema se plantea a la hora de elegir la base de datos a utilizar.
Actualmente he realizado algunas pruebas con access y todo parece ir bien, pero me he encontrado ya con algunos problemas que paso a enumerar.
  1. La aplicación consiste en un tpv, con una base de datos local que se conecta a través de internet (por IP fija) a otros clientes, para actualizar sus bases de datos.
  2. Los clientes también pueden modificar sus registros, por lo que se deberían mandar las actualizaciones de las bases de datos a todos los clientes.
  3. La base de datos debe ser suficientemente potente y pequeña. (a ser posible sin tener que instalar un servidor).
  4. Actualmente mis pruebas las hago con Access, en donde tengo una réplica exacta de todas las tablas de mi base de datos (completamente vacías) que se van modificando según los clientes realizan los cambios en el tpv. Despues envio solamente estos datos temporales a todos los clientes. (este metodo es muy lento y engorroso, por lo menos con access).
¿qué tipo de base de datos me recomendais que elija?

marcoszorrilla 30-01-2005 16:41:45

Puedes hacer una prueba de rendimiento con FireBird, no te llevará mucho tiempo, no tienes porque montar toda la aplicación sino crear las tablas que intercambian los datos y hacer una prueba. A mí me parece que va a ser más culpa de la velocidad de conexión que no del propio motor.

Si se confirma que las pruebas resultan parecidas de rendimiento, podrías probar a enviar ficheros de texto y luego importarlos con la otra aplicación.

Un Saludol.

taita 01-02-2005 13:24:42

Gracias marcoszorrilla por la sugerencia.
He hecho los cambios que me sugeriste, pero sigo con los mismos problemas:
Como la aplicación debe ejecutarse en forma local (en todos los puestos) he creado una base de datos local para cada puesto.
Uno de los problemas es que cuando un cliente realiza una modificación en la base de datos local, deseo que los cambios realizados se envíen a todas las bases de datos de todos los clientes (una especie de sincronización).
En Acces he solucionado esto (aparentemente) creando una tabla temporal en donde vuelco los datos que el cliente desea actualizar (se hace localmente).
Cada cierto tiempo mi aplicación se onecta con todos los clientes, recupera las posibles bases temporales de cada uno de ellos y vuelca los datos en todas las bases de datos.
Sé que lo que estoy haciendo está más o menos bien orientado, pero supongo que ha de haber alguna forma de poder volcar estos datos de manera más rápida y menos engorrosa.
Lo que he probado con Firebird es algo similar, pero el problema con el que me encuentro es que como los clientes no saben a qué hora exactamente se conectarán a internet, no sé como hacer para volcar los datos.
¿Debería crear un programa servidor que se encargara de verificar las conexiones de los clientes?
¿Alguna sugerencia?


La franja horaria es GMT +2. Ahora son las 17:46:10.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi