Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   que base de datos usar ?, modelo cliente-servidor ? (https://www.clubdelphi.com/foros/showthread.php?t=58490)

Galahad 22-07-2008 14:01:03

que base de datos usar ?, modelo cliente-servidor ?
 
hola, tengo varias aplicaciones grandes (miles de líneas) desarrolladas sobre tablas planas (paradox). Necesito cambiar la base de datos a un soporte más seguro y potente, estoy valorando diferentes opciones:

1.-) Mysql : está muy extendido, existe multitud de información en la red y además se puede aprovechar después facilmente para integrarlo en páginas PHP y una aplicación web.

2.-) Postgresql: Según informaciones es una base de datos muy robusta y potente , tiene procedimientos almacenados (mysql no ), aunque es de la que existe menos ayuda-soporte en la red (parece ser).

3.-) Firebird : Parece ser la base de datos 'nativa' de delphi

¿ cual de ellas me recomiendan ?, por otro lado, lo que más me preocupa, hay que cambiar toda la lógica de la aplicación, los centenares de ttables que tengo en la aplicación tienen que desaparecer y ser cambiados por 'querys', alguien tiene algún link en el que se documente un poco en como cambiar toda esa lógica de tratamiento de base de datos basada en eventos de componentes (dbdrids,etc), a una arquitectura cliente-servidor (via procedimientos en la base de datos,etc)
Espero haberme explicado bien, espero me puedan ayudar...
saludos...

Casimiro Notevi 22-07-2008 14:11:22

Firebird y PostgreSql, sin duda, no hay comparación con mySql, y además, ambas funcionan perfectamente por web.
Encontrarás muchísima ayuda, tutoriales, ayudas, manuales de todas ellas, no hay problema por ese motivo.

poliburro 22-07-2008 14:16:59

1 - Mysql ofrece soporte a Procedimientos almacemados, funciones, disparadores, etc. Es una muy buena opción a considerar.

2 - Postgress es de lo mejor, casi al nivel de oracle, lamentablemente los conectores existentes en su mayoria se encuentran en fase beta.

3 - Firebird es un motor ampliamente usado por los colegas (No es mi caso). Así que tienes asegurada la ayuda a tus problemas si decides escalar con este motor.

Si solo tuviera estás tres opciones yo usaria mysql, De otra manera preferiria Oracle o MsSql.

En un primer paso, tus aplicaciones pueden seguir usando los TTables, y podrías ir migrando de forma paulatina a un modelo Cliente - Servidor.

Saludos.

donald shimoda 22-07-2008 14:28:29

Cita:

Empezado por levanteelx (Mensaje 302204)
hola, tengo varias aplicaciones grandes (miles de líneas) desarrolladas sobre tablas planas (paradox). Necesito cambiar la base de datos a un soporte más seguro y potente, estoy valorando diferentes opciones:

1.-) Mysql : está muy extendido, existe multitud de información en la red y además se puede aprovechar después facilmente para integrarlo en páginas PHP y una aplicación web.

2.-) Postgresql: Según informaciones es una base de datos muy robusta y potente , tiene procedimientos almacenados (mysql no ), aunque es de la que existe menos ayuda-soporte en la red (parece ser).

3.-) Firebird : Parece ser la base de datos 'nativa' de delphi

¿ cual de ellas me recomiendan ?.

Amigo, como ves cada uno te responderá de acuerdo a sus experiencias. En mi opinión Firebird se lleva los premios lejos.
PostgreSql sería la segunda opción (si algún día encuentro algo que realmente haga mejor que Firebird y los conectores como mencionó el amigo evolucionan lo suficiente).

MSSQL ni soñarlo, para que? Gracias igual.
Oracle??? Para que?
Estas dos requieren de un DBA es decir alguien específicamente administrándolas, en mi humilde opinión no sirve. Entiendo que para ciertas aplicaciones monstruosas puede justificarse, pero dudo que si ese fuera el caso de tu aplicación estuvieras consultado aqui, ya hubieras contratado alguien que lo haga por ti. ;) Por si se malinterpreta, me refiero a que si estuvieras en el proyecto de semejante monstruo la tela disponible sería mucha. Espero que ese no sea el caso si estas pidiendo consultas gratis!!!!:D:D:D:D:D

Para finalizar, yo tengo sistemas que están funcionando todo el día, todos los días de su vida y NUNCA tuve un problema con firebird. Tiene CERO mantenimiento (esperen, eso será una ventaja??? :D) y es totalmente estable si sigues la regla de no dejar transacciones flotadoras.:o

Resumen: Firebird. Por lo menos asi lo veo yo (grande NIMO).

Saludos.

enecumene 22-07-2008 14:54:10

Yo Particularmente, MySQL y FIREBIRD, y sí MySQL soporta procedimientos almacenados ;).

Saludos.

duilioisola 22-07-2008 14:59:46

Yo voy a dar mi voto a Firebird... Nunca he tenido problemas.
(bueno, con la version 1 si, pero eso es prehistoria)

lbuelvas 22-07-2008 17:56:57

Me inclino por Firebird, he desarrollado varios proyectos con este motor y los unicos problemas que he tenido es cuando el cliente no tiene cuidado de "colocar" una U.P.S al servidor donde corre la base de datos y se corre el riesgo de que se corrompa la base de datos ante una ciada de un falllo electrico y que algun usuario este efectuando lo que se conoce como una operacion "critica", es decir, que en ese justo momento este escribiendo un registro sobre la base de datos, pero igual, este probleme se presenta en la mayoria de motores de bases de datos, aunque algunos cuentan con mecanismo para en reversa por medio de las bitacoras (logs) se restablesca la base de datos a un punto determinado en el tiempo. "Oracle" es un motor que hace esto, pero este monstruo de base de datos queda fuera del tipo de proyectos que muchos de los foristas del Club Delphi trabajan, especialmente por los costos.

Una cosa interesante, la instalacion del motor la haces en menos de un minuto, a ver que otro motor de base de datos se puede instalar en tan poco tiempo. Es mas, en algunas ocasiones he asistido telefonicamente a algunos clientes en la instalación del motor y en cuestion de minutos las aplicaciones estan andando.

Sobre mySQL acuerdense que su licencia es dual, para proyectos comerciales hay que pagar, para proyectos de codigo abierto no es necesario.

No se porque la gente sigue convencida de que mySQL es gratis, no señor, nada mas lejos de la realidad.

La otra opcion es PostgreSQL, no lo he manejado, pero lo que he escuchado es que es muy similar en su lenguaje de procedimientos a Oracle, que es robusto aunque tambien he escuchado que la instalción requiere de cierta experiencia.

Bueno si en algo me equivoco por favor haganmelo saber.

Casimiro Notevi 22-07-2008 18:37:20

Cita:

Empezado por donald shimoda (Mensaje 302209)
Amigo, como ves cada uno te responderá de acuerdo a sus experiencias. En mi opinión Firebird se lleva los premios lejos.
PostgreSql sería la segunda opción (si algún día encuentro algo que realmente haga mejor que Firebird y los conectores como mencionó el amigo evolucionan lo suficiente).

MSSQL ni soñarlo, para que? Gracias igual.
Oracle??? Para que?
Estas dos requieren de un DBA es decir alguien específicamente administrándolas, en mi humilde opinión no sirve. Entiendo que para ciertas aplicaciones monstruosas puede justificarse, pero dudo que si ese fuera el caso de tu aplicación estuvieras consultado aqui, ya hubieras contratado alguien que lo haga por ti. ;) Por si se malinterpreta, me refiero a que si estuvieras en el proyecto de semejante monstruo la tela disponible sería mucha. Espero que ese no sea el caso si estas pidiendo consultas gratis!!!!:D:D:D:D:D

Para finalizar, yo tengo sistemas que están funcionando todo el día, todos los días de su vida y NUNCA tuve un problema con firebird. Tiene CERO mantenimiento (esperen, eso será una ventaja??? :D) y es totalmente estable si sigues la regla de no dejar transacciones flotadoras.:o

Resumen: Firebird. Por lo menos asi lo veo yo (grande NIMO).

Saludos.


Total y absolutamente de acuerdo. Mantenimiento CERO.



Cita:

Empezado por lbuelvas (Mensaje 302281)
Me inclino por Firebird, he desarrollado varios proyectos con este motor y los unicos problemas que he tenido es cuando el cliente no tiene cuidado de "colocar" una U.P.S al servidor donde corre la base de datos y se corre el riesgo de que se corrompa la base de datos ante una ciada de un falllo electrico y que algun usuario este efectuando lo que se conoce como una operacion "critica", es decir, que en ese justo momento este escribiendo un registro sobre la base de datos, pero igual, este probleme se presenta en la mayoria de motores de bases de datos, aunque algunos cuentan con mecanismo para en reversa por medio de las bitacoras (logs) se restablesca la base de datos a un punto determinado en el tiempo.[..]

Precisamente, Firebird no tiene ese problema, se autorecupera sola, inmediatamente y sin intervención humana de ningún tipo. Es muy, muy, muy difícil que se estropee... y en todo caso, un backup/restore soluciona casi todo :)

Galahad 23-07-2008 07:16:22

Gracias
 
Gracias a todos los que habeís contestado, me he instalado Postgres y tiene muy buena pinta, pero gracias a vuestros mensajes, me decanto por Firebird, voy a empezar a 'pelearme' con él, espero algún día poder ayudar a otros tal y como vosotros me habeis ayudado.
Gracias de nuevo...

duilioisola 23-07-2008 07:47:07

De "pelear" nada... Firebird se deja ganar facilmente ;-)
Es muy sencillo: de instalar el servidor, el cliente y de usar.

Angel Fernández 23-07-2008 13:26:49

Mi voto es para Firebird.
 
No conozco Postgress ni MySQL. Una vez instalé MSSQL Server y me costó una hora hacerlo. Para configurarlo tienes que leer varios libros. Luego lo desinstalé y aún tengo carpetas perdidas por el disco duro con archivos de MsSql.

Firebird se instala en dos minutos (120 segundos de reloj) en una sola carpeta. Tienes un montón de componentes de acceso (MDO, FIBPLUS, etc, muchos de ellos gratuitos) y, quizá lo mejor, tienes la mejor ayuda del mundo: estos mismos foros.

Yo empecé de cero y sólo mirando los hilos del foro de FB he aprendido un montón.

Ahora mismo, estoy usando FB 2.0 para una base de datos inmensa, que recoge información de 70 sensores cada minuto. Tengo más de 6 millones de datos y va como la seda (ocupa 1,5 GB en el disco duro).

Eso sí, he tenido que leer y preguntar mucho en estos foros y siempre he sido diligentemente atendido. Busca por ahí a ver si encuentras lo mismo para Postgress (quizá sí, ojo, no lo he probado ni estoy desacreditando a nadie).

Por mi experiencia, sin duda: Firebird.

Un saludo.

Galahad 23-07-2008 13:43:21

Componentes de acceso
 
Muchas gracias Angel, efectivamente la información y soporte encontrados en este foro son la razón más importante que me ha llevado a elegir esta base de datos, gracias por tu información, aprovecho para preguntarte la primera .... :) ¿ que componentes de acceso utilizas ?, en el foro he visto buenas referencia de los FIBPLUS....
Saludos...

donald shimoda 23-07-2008 14:33:39

Cita:

Empezado por levanteelx (Mensaje 302606)
Muchas gracias Angel, efectivamente la información y soporte encontrados en este foro son la razón más importante que me ha llevado a elegir esta base de datos, gracias por tu información, aprovecho para preguntarte la primera .... :) ¿ que componentes de acceso utilizas ?, en el foro he visto buenas referencia de los FIBPLUS....
Saludos...

Los he usado antes de pasarme a DataAbstract, he incluso con dataabstract. Son muy buenos, para ,mi al momento los mejores, pero recuerda que son de pago.

Saludos.

Angel Fernández 23-07-2008 20:40:13

Cita:

Empezado por levanteelx (Mensaje 302606)
.... :) ¿ que componentes de acceso utilizas ?, en el foro he visto buenas referencia de los FIBPLUS....
Saludos...

Como te dice el amigo Donald, FIBPLUS quizá sean los mejores, pero de pago. Si usas MDO te olvidarás de FIBPLUS, y éstos últimos son gratis. Quizá un pelín más lentos pero cuestión de muy poco. Busca en los hilos porque creo recordar que alguien hizo una comparativa muy interesante entre varios componentes entre los que estaban MDO, FIBPLUS, ZEOS y otros. Zeos no los he usado nunca, pero en los foros dicen que son más lentos.

Y también creo recordar que Casimiro en un hilo, hace tiempo, hablaba de que los FIB no debían ser de pago porque estaban desarrollados sobre FREEIB unos componentes antiguos de código libre.

En fín, como te dije, investiga en este foro y encontrarás muchísima información interesante.

Suerte.

Un saludo.

donald shimoda 23-07-2008 21:35:44

Cita:

Empezado por Angel Fernández (Mensaje 302773)
Y también creo recordar que Casimiro en un hilo, hace tiempo, hablaba de que los FIB no debían ser de pago porque estaban desarrollados sobre FREEIB unos componentes antiguos de código libre.

En realidad depende del tipo de licencia en que estén apoyados. Dudo que este sea el caso (que haya algún tipo de violación) dado que tanto IBX(Borland/Codegear/Embarcadero..pararemos ahi????) como FIB+ están basados en FREEIB.

Saludos.

Casimiro Notevi 23-07-2008 23:03:37

Efectivamente, el tema de la licencia de FIBplus me tiene "mosqueado", la razón la explico de nuevo:
Gregory Deatz escribe FreeIB Components y lo pone a disposición del que lo quiera usar mediante una licencia libre, open source.
Borland decide usarlos para su Delphi 4 (creo recordar) y a partir de ellos crea las IBX.
Luego llegó la gente de Devrace y crearon FIBplus, al principio seguían siendo libres, pero después con el tiempo cambiaron la licencia, creo que estuvieron un tiempo usando una licencia (no recuerdo el nombre) pero que era libre con la condición de que si usabas los componentes y les sacabas beneficios, te comprometías a pagar una licencia. Luego, ahora, tienen una licencia un poco peculiar, creo que algo restrictiva y que entra en conflicto con cualquier otra licencia open source. También es, creo, ilegal usarla.
La prueba está en un par de detalles, en las cabeceras de cada 'unit' de las FIBplus pone lo siguiente:
Cita:

{***************************************************************}
{ FIBPlus - component library for direct access to Firebird and }
{ Interbase databases }
{ }
{ FIBPlus is based in part on the product }
{ Free IB Components, written by Gregory H. Deatz for }
{ Hoagland, Longo, Moran, Dunst & Doukas Company. }
{ mailto:gdeatz@hlmdd.com }
{ }
{ Copyright (c) 1998-2001 Serge Buzadzhy }
{ Contact: buzz@devrace.com }
{ }
{ ------------------------------------------------------------- }
{ FIBPlus home page : http://www.fibplus.net/ }
{ FIBPlus support e-mail : fibplus@devrace.com }
{ ------------------------------------------------------------- }
{ }
{ Please see the file License.txt for full license information }
{***************************************************************}
Y antes venía todo el código fuente, ahora han quitado las fuentes de las units principales, no sé si lo entregan al pagar la licencia.

Luego salió MDO que también está basado en FreeIB Components y por lo tanto también es open source.

2-D@monic 28-07-2008 20:23:54

costo de licencia
 
Cita:

"Oracle" es un motor que hace esto, pero este monstruo de base de datos queda fuera del tipo de proyectos que muchos de los foristas del Club Delphi trabajan, especialmente por los costos
holas a todos, saliendo un poco fuera de la decisión de que manejador quisiera que alguien me aclare cuanto es el costo de la licencia de oracle y sqlserver, tengo entendido que a parte del manejador hay costos por cliente
que se conecte a la base de datos o no?

ah, en cuanto al manejador creo que postgresql sería una opción si es que hay una buena concurrencia en la base de datos, la verdad no se si firebird tiene buen soporte a transacciones.


saludos............

Delphius 28-07-2008 22:11:29

Cita:

Empezado por 2-D@monic (Mensaje 303918)
holas a todos, saliendo un poco fuera de la decisión de que manejador quisiera que alguien me aclare cuanto es el costo de la licencia de oracle y sqlserver, tengo entendido que a parte del manejador hay costos por cliente
que se conecte a la base de datos o no?

ah, en cuanto al manejador creo que postgresql sería una opción si es que hay una buena concurrencia en la base de datos, la verdad no se si firebird tiene buen soporte a transacciones.


saludos............

No se los precios... pero creo que lo mejor sería que los contactes a ellos. Visita su página. Es muy posible que tenga un e-mail de contacto, o un teléfono. Ellos pueden informarte mejor.

Firebird si soporta transacciones.

Saludos,

Al González 29-07-2008 02:01:13

Más de cuatro años trabajando con Firebird, NUNCA se me ha corrompido nada de una base de datos Firebird, soporta procedimientos almacenados, disparadores, funciones, vistas, roles, generadores (secuencias), transacciones, transacciones anidadas (save points), etc. :cool:

Su sistema de metadatos (tablas del sistema) son de enorme ayuda para realizar muchas tareas de mantenimiento y automatización.

A diferencia de otras bases de datos open source nació de una base de datos de paga que ya llevaba varios años consolidada en el mercado (InterBase), usándose exigentemente en grandes empresas. Se apega en buena medida al estándar SQL (no al 100% pero si le mantiene un debido respeto, más que MySQL, SQL Server y otras).

Hoy día me atrevería a decir que Firebird es el motor de bases de datos que mejor se lleva con Delphi. Es una apuesta segura por su calidad (principalmente) y por su arraigo entre los colegas.

Tengo dos aplicaciones medianas (menos de 100 tablas y menos de un millón de registros) trabajando sin problemas. Y he leído en muchos lados que con las aplicaciones "grandes" tampoco hay dificultades importantes.

Mi opinión.

Al González. :)

2-D@monic 29-07-2008 03:54:12

referencia firebird
 
La verdad es que solo escuche de firebird, en realidad tengo buen conocimiento de postgresql y sql server, el último porque es de preferencia en las organizaciones. Pero lo de "software libre" empieza a tener interés en las organizaciones, como mysql, postgresql.
Según estos comentarios comenzaré a capacitarme en firebird, para "empezar" quisiera que me instruyan que lenguaje procedural de consulta tiene y como se conectan al manejador (odbc, ado, zeos lib).
ahhhhhhhh algo más..... que diferencias tiene con interbase.


La franja horaria es GMT +2. Ahora son las 12:33:27.

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