Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Noticias (https://www.clubdelphi.com/foros/forumdisplay.php?f=34)
-   -   Oracle empieza a cerrar MYSQL (https://www.clubdelphi.com/foros/showthread.php?t=75910)

rretamar 26-09-2011 23:00:10

Oracle empieza a cerrar MYSQL
 
El futuro del proyecto MySQL: Open-Core



Recientemente Oracle anuncio algo que ya muchos veníamos temiendo, el proyecto MySQL deja de ser un proyecto totalmente de software libre, una noticia que se oficializa y que ya venia haciendo ruido entre los desarrolladores desde la compra realizada por Sun. Este sutil, pero fundamental cambio impuesto por Sun, cambia por completo el modelo de negocio original que eligió el creador de MySQL, en donde el código fuente estaba liberado totalmente y disponible para que la comunidad pudiera realizar modificaciones, e inclusive mejoras. Ahora muchas de las extensiones más avanzadas y útiles de MySQL Enterprise Edition van a ser comerciales, recientemente se incorporaron tres nuevas, pueden leer las características de las mismas en el blog oficial de Oracle.


El nuevo modelo de negocios de MySQL pasa a ser Open-Core. Este modelo consiste en brindar un núcleo abierto y vender extensiones que son 100% privativas.


El modelo en sí no es del todo malo, salvo por un detalle, en general este tipo de licenciamientos terminan provocando un núcleo muy poco útil y que requiere prácticamente de forma obligatoriamente extensiones, que por lógica pura, son de acceso privado y por medio de un pago.
Este tipo de extensiones privativas tienen una serie de desventajas enormes, como comenta Michael Widenius (creador de MySQL, ahora trabajando en María DB):
  • El licenciamiento Open Core no tiene nada que ver con un proyecto de código abierto.
  • No se pueden corregir errores, y no se puede contratar a nadie para hacerlo, salvo al proveedor original.
  • No se puede examinar y mejorar el producto.
  • No se puede utilizar cualquier extensión abierta o comercial de cualquier otra persona.
  • Uno se encuentra limitado a las plataformas que los vendedores originales ponen a nuestra disposición.
El panorama para MySQL no es bueno, a medida que pasan los meses las teorías de que el proyecto no esta bien encaminado se vuelven realidad. No obstante no hay que preocuparse demasiado, MariaDB esta cobrando más y más fuerza, por lo que creo que será el reemplazo obligatorio y lógico.

Enlace original del artículo:
http://www.kabytes.com/actualidad/el...sql-open-core/

MAXIUM 27-09-2011 05:19:01

Lo predije, Oracle comprando jugadores del equipo contrario para no meter goles.

¿Que hacer?, ¿le saldrá el tiro por la culata como le sucedió a OpenOffice vs Libre Office?

Al González 27-09-2011 06:49:49

Interesante enlace rretamar (y gracias por la transcripción), era algo hasta cierto punto previsible.

Creo que de esto surge una buena oportunidad para Firebird, pues muchos usuarios de MySQL se estarán preguntando a qué base de datos libre moverse ahora. Cierto, son varias las opciones, pero la mejor amiga de Delphi cada vez está mejor.

Por otra parte, veo en MySQL un camino muy similar al de PHP: su momento cumbre ha quedado atrás. Y así como muchos ex-PHP han adoptado alternativas modernas como Python, Ruby, etc., creo que ocurrirá algo similar con su inseparable compañero de toda la vida, MySQL.

Un abrazo open-change.

Al González. :)

D-MO 27-09-2011 15:25:52

Cita:

Empezado por MAXIUM (Mensaje 413556)
...como le sucedió a OpenOffice vs Libre Office?

Exacto, MaríaDB terminará reemplazándolo

Cita:

Empezado por Al González (Mensaje 413559)
...Y así como muchos ex-PHP han adoptado alternativas modernas como Python, Ruby, etc., c...

¿Que comes que adivinas?... :p

En efecto, los hasta ahora usuarios de MySQL terminarán adoptando un nuevo motor de bases de datos aunque me atrevo a decir que quienes tomarán la decisión por los usuarios serán los proveedores de hospedaje web. ¿Quién quiere apostar :D?

Es una pena que Oracle realice estas acciones con los proyectos abiertos de Sun, demuestra que su interés es únicamente comercial.
  • Lo hizo con OpenSolaris
  • Intentó hacerlo con OpenOffice
  • Ahora es My SQL
  • ¿Seguirá con Java?

Saludos.

roman 27-09-2011 16:39:42

Cita:

Empezado por Al González (Mensaje 413559)
un camino muy similar al de PHP: su momento cumbre ha quedado atrás. Y así como muchos ex-PHP han adoptado alternativas modernas como Python, Ruby, etc.

¡Ah caray! Y esto ¿de dónde lo concluyes?

// Saludos

Julián 27-09-2011 16:42:56

Cita:

Empezado por roman (Mensaje 413611)
¡Ah caray! Y esto ¿de dónde lo concluyes?

// Saludos


Eso me pregunto yo :D.

Casimiro Noteví 27-09-2011 16:49:10

¡huy, huy, huy...!, que se han picado los phperos (qué feo suena) :D

jlrbotella 27-09-2011 17:42:47

Despues vendrá Java.

Lo mismo pasará a largo plazo con PHP. (IBM)

En definitiva al principio todo es libre y al final todo acaba siendo de pago, el porque, a los programadores, ingenieros, etc.. hay que pagarles y hoy por hoy con la crisis que hay no existen fondos para subvencionar los proyectos.

Al menos con Delphi ya sabemos lo que tenemos que pagar y no llevarnos sorpresas.

Un saludo,
JL

Casimiro Noteví 27-09-2011 17:59:18

Cita:

Empezado por jlrbotella (Mensaje 413619)
Lo mismo pasará a largo plazo con PHP. (IBM)

¿IBM?, PHP no tiene nada que ver con IBM, salvo que su creador estuvo trabajando allí.

Cita:

Empezado por jlrbotella
En definitiva al principio todo es libre y al final todo acaba siendo de pago

Bueno, eso no es así, lo que es libre, es libre y no se puede cambiar (dependiendo de la licencia que tenga). Pongo el ejemplo de Interbase, usaron una licencia libre con su interbase 6.0 y de ella surgió otro proyecto: firebird.
Luego los de Borland (dueños de interbase) volvieron a cambiar no liberar la versión siguiente de interbase, pero la versión 6 tuvo que seguir siendo libre, tal y como fuerza por ley su licencia.
Así que mysql (que es de lo que se habla, no de php) seguirá siendo libre lo que ahora mismo es libre.

Al González 27-09-2011 18:02:15

Cita:

Empezado por Casimiro Notevi (Mensaje 413613)
¡huy, huy, huy...!, que se han picado los phperos (qué feo suena) :D

Perdón, me refería a Delphi. ¡Chanfle! Quise decir C++, ¡ah no! COBOL, digo Clipper, ¡no!...este...¿cuál es el que menos seguidores tiene? :o :D

D-MO 27-09-2011 18:21:12

Cita:

Empezado por Al González (Mensaje 413623)
Perdón, me refería a Delphi. ¡Chanfle! Quise decir C++, ¡ah no! COBOL, digo Clipper, ¡no!...este...¿cuál es el que menos seguidores tiene? :o :D

¿Brainfuck?:eek:

mightydragonlor 27-09-2011 18:33:54

El futuro de Java ya está marcado, "sino compras oracle no podras usar java", algo así han de querer hacer los de oracle xD

Delfino 29-09-2011 10:52:45

Eso animara a los de MySQL convertirse a una BD mejor: Firebird..

Chris 29-09-2011 18:13:22

No creo que Firebird logre captar un porcentaje considerable de esta estampida de desarrolladores cambiando de motor. Más bien creo que el mayor porcentaje se lo llevará PostgreSQL y motores No-SQL que se están volviendo moda últimamente (por si tu aplicación es el próximo Facebook o Twitter).

Firebird necesitará mejorar en varios aspectos para poder captar a estos desarrolladores. Lamentablemente, creo que no podrá lograrlo por el corto tiempo del que se dispone.

Seguramente son los desarrollares de MariaDB los que se han encargado de hacerle eco a la noticia -a ellos les conviene-. No olvidemos que MySQL jamás ha sido completamente libre, a menos que lo utilizarás para propósitos OpenSource, que no era la mayoría de los casos. Por último, no hay mal que por bien no venga y me alegra escuchar esta noticia porque MySQL no me agrada por esa licencia dual que siempre ha tenido.

Saludos,
Chris

Casimiro Noteví 29-09-2011 18:27:46

Cita:

Empezado por Chris (Mensaje 413942)
Firebird necesitará mejorar en varios aspectos para poder captar a estos desarrolladores. Lamentablemente, creo que no podrá lograrlo por el corto tiempo del que se dispone.

¿Y qué aspectos debe mejorar?

roman 29-09-2011 18:39:49

Cita:

Empezado por Chris (Mensaje 413942)
Firebird necesitará mejorar en varios aspectos para poder captar a estos desarrolladores. Lamentablemente, creo que no podrá lograrlo por el corto tiempo del que se dispone.

Tampoco creo que la gente que usa mysql migre a firebird, pero, igual que Casimiro, me gustaría saber cuáles son estos aspectos que consideras debe mejorar. Así mismo, me gustaría que Delfino nos comentara en qué sentido le parece mejor firebird que mysql. Entendámonos, para lo que suele usarse mysql, no me parece que le falte algo que sí tenga Firebird (bueno, sí, los procedimientos almacenados de mysql son insufriblemente lentos).

Cita:

Empezado por Chris (Mensaje 413942)
y motores No-SQL que se están volviendo moda últimamente

Yo no termino de entender esto del nosql. Estuve viendo algo de mongodb y se ve muy interesante pero, ¿hasta que punto es usable si en sistemas de gestión suelen ser imprescindibles las transacciones, que no soporta nosql?

Cita:

Empezado por Chris (Mensaje 413942)
Seguramente son los desarrollares de MariaDB los que se han encargado de hacerle eco a la noticia -a ellos les conviene-.

Y, ¿realmente tendrá futuro MariaDB? Digo, dicen que segundas partes nunca son buenas. Además, quién nos asegura que Widenius no se deshará de ella igual que con mysql, ¿o no fue así?

// Saludos

Chris 29-09-2011 19:00:50

Cita:

Empezado por Casimiro Notevi (Mensaje 413948)
¿Y qué aspectos debe mejorar?

Seguridad -el más importante-. Un mejor lenguaje para la programación de procedimientos almacenados. Reducir el uso de tráfico de red. Agregar más rutinas para el procesamiento de datos. Bueno, esos los que recuerdo por el momento. En cuanto valla recordando más los iré poniendo. Aunque reconozco que en las últimas dos versiones ha agregados cosas muy útiles, cómo por ejemplo poder administrar los usuarios con SQL y búsquedas de texto utilizando expresiones regulares.

Saludos,
Chris

Casimiro Noteví 29-09-2011 19:07:50

:confused: ¿Seguridad -el más importante-?
:confused: ¿Un mejor lenguaje para la programación de procedimientos almacenados?
:confused: ¿Reducir el uso de tráfico de red?
:confused: ¿Agregar más rutinas para el procesamiento de datos?

¿Estamos hablando del mismo firebird? :confused::confused::confused::confused::confused::confused:

Chris 29-09-2011 19:09:05

Cita:

Empezado por roman (Mensaje 413954)
Yo no termino de entender esto del nosql. Estuve viendo algo de mongodb y se ve muy interesante pero, ¿hasta que punto es usable si en sistemas de gestión suelen ser imprescindibles las transacciones, que no soporta nosql?

En sistemas donde la atomicidad de datos es presindible y el almacenamiento y lectura sea masivo. Por ejemplo un Tweet o un mensaje de facebook. Pero tengo entendido que algunos de estos motores sí soportan transacciones en un nivel básico. Por ejemplo BigTable soporta transacciones que se limiten a la modificación de una sola tabla.

Cita:

Empezado por roman (Mensaje 413954)
Y, ¿realmente tendrá futuro MariaDB? Digo, dicen que segundas partes nunca son buenas. Además, quién nos asegura que Widenius no se deshará de ella igual que con mysql, ¿o no fue así?

MySQL fue vendida por mil millones de dólares a Sun. Con cuánto se esa cantidad se habrá quedado este chico? No sería de extrañarse que él tenga una estrategia para volver hacer lo mismo con MariaDB. Por otro lado, no conozco exactamente la licencia con la que se distribuye este motor, pero supongo que deben ser igual o muy similar a la que usó con MySQL. Por lo que si quieres utilizarla para propósitos closed-source, tendrás que pasar por caja.

Saludos,
Chris

jhonny 29-09-2011 19:09:52

Chris, yo diría que en 2 o 3 de los aspectos que mencionas, según yo más bien son falencias pero de MySQL.

Casimiro Noteví 29-09-2011 19:25:06

Cita:

Empezado por jhonny (Mensaje 413981)
Chris, yo diría que en 2 o 3 de los aspectos que mencionas, según yo más bien son falencias pero de MySQL.





.

Chris 29-09-2011 19:25:18

Cita:

Empezado por Casimiro Notevi (Mensaje 413978)
¿Seguridad -el más importante-?
¿Un mejor lenguaje para la programación de procedimientos almacenados?
¿Reducir el uso de tráfico de red?
¿Agregar más rutinas para el procesamiento de datos?

¿Estamos hablando del mismo firebird?

Sí Casimiro :)

Seguridad: Las contraseñas son de ocho caracteres en la práctica. No existe un método nativo para hacer conexiones por SSL. Usuarios a nivel de base de datos. Limitar los dominios sobre los que puede iniciar sesión. Comparado con las características de seguridad de Postgre, Firebird se queda como un juguete para niños.

Procedimientos almacenados: Nuevamente, comparado con Postgre, se queda como un juguete.

Uso de red: Sí, en comparación (nuevamente :D) utiliza mucha banda. Además el protocolo es poco tolerante a errores de conexión, como la pérdida de datos o micro-cortes en la conexión.

Rutinas de Datos: Sí. Por ejemplo, no sé si existe aún una rutina para obtener el hast MD5 o SHA1 de un dato. Nuevamente, en comparación con Postgre se queda corto.

No es que quiera decir que Firebird debe ser Postgre. Dios no lo quiera. Para eso ya existe Postgre. Sino que todo esto te lo digo como argumento del por qué creo que Firebird está un poco atrás para poder competir con Postgre para captar esta estampida de desarrolladores.

Lo que sí me encantaría ver para la próxima versión de Firebird (3.0), es que se mejorará los aspectos de la seguridad y mejor tolerancia a errores de red. Eso para mí es lo más importante. Para el resto, sino necesitas de avanzados procedimientos almacenados y un millón de rutinas de datos, Firebird es una maravilla y me encanta. Desearía verlo más implementado en hosting y frameworks para desarrollo de aplicaciones :).

Saludos,
Chris

Chris 29-09-2011 19:29:02

Cita:

Empezado por jhonny (Mensaje 413981)
Chris, yo diría que en 2 o 3 de los aspectos que mencionas, según yo más bien son falencias pero de MySQL.

No entendí :p Cuáles aspectos Jhonny?

jhonny 29-09-2011 19:39:00

Cita:

Empezado por Chris (Mensaje 413989)
No entendí :p Cuáles aspectos Jhonny?

* Un mejor lenguaje para la programación de procedimientos almacenados.
* Agregar más rutinas para el procesamiento de datos.

Diría que esos dos, además de la lentitud en los procedimientos almacenados que comenta roman y que no me parece completamente libre, al ponerle tantas "trabas" a su licencia.

Casimiro Noteví 29-09-2011 19:39:11

Cita:

Empezado por Chris (Mensaje 413988)
Sí, Casimiro :)

No estoy de acuerdo, pero aunque lo estuviese, ¿no estamos hablando de mysql?, ¿a qué viene comparar ahora con postgresql? :confused::confused::confused:

Chris 29-09-2011 19:43:03

Cita:

Empezado por Casimiro Notevi (Mensaje 413996)
No estoy de acuerdo, pero aunque lo estuviese, ¿no estamos hablando de mysql?, ¿a qué viene comparar ahora con postgresql? :confused::confused::confused:

En el sentido de que estoy argumentando el por qué creo que Postgre captará la gran mayoría de desarrolladores que migren de MySQL y nuestro Firebird no agarrará muchos caramelos de la piñata por ser el más pequeño tal vez o por carecer de algunas funcionalidades con respecto a Postgre.

Saludos,
Chris

roman 29-09-2011 19:46:53

Cita:

Empezado por jhonny (Mensaje 413995)
* Agregar más rutinas para el procesamiento de datos.

¿A qué se refieren con esto? Porque si se refieren a funciones nativas me parece que no es para nada una carencia de mysql. Por el contrario, cuenta con muchas funciones que en firebird debes agregarlas mediante udfs.

// Saludos

jhonny 29-09-2011 19:58:08

Cita:

Empezado por roman (Mensaje 414001)
¿A qué se refieren con esto? Porque si se refieren a funciones nativas me parece que no es para nada una carencia de mysql. Por el contrario, cuenta con muchas funciones que en firebird debes agregarlas mediante udfs.

// Saludos

Bueno, Firebird hoy en día tiene muchas funciones nativas, que antes había que agregarlas por UDFs, pero que ya no... tendríamos que sacar un listado de las que tiene MySQl y determinar esto comparado realmente. Por otro lado y ya que lo mencionas, no se si... ¿MySQL tiene la posibilidad de agregarle más funciones, como lo hace Firebird con las UDFs o algo parecido?

roman 29-09-2011 20:01:17

No lo creo, y si lo tiene debe ser desastroso, igual que los procedimientos almacenados.

// Saludos

ASAPLTDA 29-09-2011 22:43:55

Cita:

Empezado por Chris (Mensaje 413975)
Seguridad -el más importante-. Un mejor lenguaje para la programación de procedimientos almacenados. Reducir el uso de tráfico de red. Agregar más rutinas para el procesamiento de datos. Bueno, esos los que recuerdo por el momento. En cuanto valla recordando más los iré poniendo. Aunque reconozco que en las últimas dos versiones ha agregados cosas muy útiles, cómo por ejemplo poder administrar los usuarios con SQL y búsquedas de texto utilizando expresiones regulares.
Saludos,
Chris

La faltan funciones, definir campos tipo %row para evitar definiciones de declare , le falta us sistema de gestion de procesos (jobscheduler), la faltan rutinas entre procesimientos o paso de valores tipo %row, integridad de datos cuando se adicionan restricciones a nivel de la base de datos
y .... me encanta firebird por su facilidad de cambiar algunas cosas, facilidad de transportar la base de datos, estabilidad

Delphius 30-09-2011 04:29:57

Cita:

Empezado por Chris (Mensaje 413975)
Seguridad -el más importante-.

Bueno, si.. es un pedido que se viene haciendo pero si fuera por vos Chris entonces quedate con tu queridito PostgreSQL. ¡Vaya si algunos a algunos les encanta seguir tirando leña sobre este tema! Ya dijeron que para FB 3.0 habrán mejorado e implementado mejoras en este aspecto. ¿No te podés aguantar un poquito?
Si en verdad Firebird fuera tan insegura... ¿Porqué se sigue utilizando? Ponete a leer los casos de éxito que está publicando FB y te darás cuenta de que en muchos aspectos se prefiere FB por incluso a Oracle.

Cita:

Empezado por Chris (Mensaje 413975)
Seguridad -el más importante-.
Un mejor lenguaje para la programación de procedimientos almacenados.

¿Mejor? ¡Otra vez la burra al trigo! De entre varios motores, el que mejor está poniendo ganas es FB. Ha... por cierto, desde 2.5 se ha estandarizado y según tengo entendido viene con una especie de herramienta, un debugger, o algo por el estilo.

Cita:

Empezado por Chris (Mensaje 413975)
Reducir el uso de tráfico de red.

¿Se me permite reir?... ¡Por Dios! Si hay algo que enorgullecerse del buen equipo de FB es que con cada liberación se mejora entre un 33% a 50% respecto a la anterior en la eficiencia en el uso y tráfico de red.

Cita:

Empezado por Chris (Mensaje 413975)
Agregar más rutinas para el procesamiento de datos.

Desde FB 2.x FB cuenta con un amplio abanico, y además uno puede extenderse gracias a UDF. ¿Te parece que son pocas?
¿Y cuáles más? ¿Cuáles crees que debería tener para ser superior, y estar en lo más top de lo top?

Cita:

Empezado por Chris (Mensaje 413988)
Sí Casimiro :)
Seguridad: Las contraseñas son de ocho caracteres en la práctica. No existe un método nativo para hacer conexiones por SSL. Usuarios a nivel de base de datos. Limitar los dominios sobre los que puede iniciar sesión. Comparado con las características de seguridad de Postgre, Firebird se queda como un juguete para niños.

Bueno, sigue con tu juguete de PostgreSQL que es más pesado que un elefante :rolleyes: . Nosotros seguiremos con FB.... ¡que es tan liviano que vuela!

Cita:

Empezado por Chris (Mensaje 413988)
Procedimientos almacenados: Nuevamente, comparado con Postgre, se queda como un juguete.

Dime... ¿cómo es que los comparas? Danos más info sobre eso. Si me explicas quizá puedas entender a lo que apuntas.

Cita:

Empezado por Chris (Mensaje 413988)
Uso de red: Sí, en comparación (nuevamente :D) utiliza mucha banda. Además el protocolo es poco tolerante a errores de conexión, como la pérdida de datos o micro-cortes en la conexión.

¿Utiliza mucha banda? Mira vos... ¿No había dicho antes que en cada liberación se mejora? A ver... si ya lo dije. ¿Poco tolerante? ¡De donde sacas semejante cosa!

Cita:

Empezado por Chris (Mensaje 413988)
Rutinas de Datos: Sí. Por ejemplo, no sé si existe aún una rutina para obtener el hast MD5 o SHA1 de un dato. Nuevamente, en comparación con Postgre se queda corto.

A ver muchacho... FB es un motor de base de datos... No se porqué, o de donde nace la manía y la locura por convertir a un motor de base de datos en un lenguaje de programación más. ¡Dejémonos de joder!
Un motor es un motor... ¿Para que meterle más, y más.... rutinas, funciones? ¿TODAS te hacen falta?

Seamos más equilibrados, lo que hace bien el motor déjaselo a el, para el resto está Mastercard; este... el Lenguaje de programación X y la aplicación que uno le desarrolle. No le pidas a un motor de base de datos que tenga incorporada una biblioteca para trabajar con redes neuronales, caso extremis. ;)

Cita:

Empezado por Chris (Mensaje 413988)
No es que quiera decir que Firebird debe ser Postgre. Dios no lo quiera. Para eso ya existe Postgre. Sino que todo esto te lo digo como argumento del por qué creo que Firebird está un poco atrás para poder competir con Postgre para captar esta estampida de desarrolladores.

Lo bueno es que hay gente de PostgreSQL que le debe mucho favor a FB, como también una buena cantidad de gente de MySQL.
Y que mejor saber que los avances del proyecto PostgreSQL se están amesetando y FB viene ganando más adeptos.
No hace falta que la gente de MySQL se venga; ya se está viniendo la gente de PostgreSQL que reconoce que tienen un elefante pesado y no saben como seguir avanzando sin darle de comer más. :D

Cita:

Empezado por Chris (Mensaje 413988)
Desearía verlo más implementado en hosting.
Chris

Bueno, eso si te lo permito. Allí si te doy muchísima más razón. Le falta penetración en ese mercado.

Saludos,

Chris 30-09-2011 06:02:01

Delphius, noto que siempre recalcas en mis opiniones. Creo que te debo caer mal :P

Hombre, no sugiriendo que uno sea mejor que el otro. Cada uno de los motores tiene lo suyo y su ámbito óptimo. No elegirías Postgre o Firebird para manejar una simple agenda de contactos. Tampoco usarías SQLite para manejar un sitio como Tweeter.

No estoy pidiendo que Firebird sea Postgre. Lo repito. Tonto sería yo si pidiera a SQLite que fuera como Oracle. Pedir este tipo de cosas creo que solo los tontos lo hacen. Si SQLite tuviera todo lo de Oracle perderíamos ese maravilloso motor de datos liviano y ligero para llevar.

Repito, cada base de datos tiene su nicho y es pericia del desarrollador elegir el motor más adecuado para el menester. Pieso que sería ingenuo de un desarrollador elegir siempre el mismo motor para própositos y usos muy, pero muy distintos. Por eso uno tiene que saber que tiene uno y que le falta al otro. La gente de Postgre que debe estar viniendo a FB, seguramente no supieron hacer una buena elección al principio, o tal vez no existía Firebird en ese entonces.

Hace ya un par de años, se me encomendó elegir un nuevo motor de base de datos para un sistema ya existente. Descarté a MySQL por su licencia dual. También, aunque no lo creas, descarté a PostgreSQL porque era como utilizar un camión para mover una pala de tierra. Al final elegí Firebird y estoy, hasta el día de hoy, inmensamente contento con la elección. Se adapta como un guante a los requerimientos y jamás, pero jamás me ha dado problemas. Eso sí, no me atrevo a exponerlo a la internet. Sería relativamente rápido averiguar la clave de SYSDBA.

Sí me encantaría ver mejoras en el motor de Firebird. En lo que respecta a la seguridad, procedimientos almacenados (siempre hay dónde mejorar) y optimización del uso de red (compresión y mayor tolerancia a errores son lo más importante). Al final, no tomes lo que he dicho como crítica a Firebird. Más bien tómalo como Features request :) que más que todo eso son.

Saludos,
Chris

PD.: Si deseas crear una aplicación de tres capas, pero utilizando la arquitectura Cliente <-> Servidor (DB exclusivamente), debes utilizar procedimientos almacenados para la lógica de negocios. Para escribir la lógica es de gran ayuda tener un cuasi lenguaje de programación. Es ahí dónde es bueno que una base de datos disponga de buen soporte de procedimientos almacenados (en Postgre se usa Python).

mcs 30-09-2011 09:05:42

Hola,

Me parece que, excepto Delphius, soys un poco "fanboys" de Firebird.

Firebird es una buena base de datos, pero para nada es la octava maravilla del mundo. Tiene limitaciones, tiene "problemas" (lo comentado por Delphius del consumo de ancho de banda o todo el tema seguridad), y estas cosas están aquí, y no lo podemos ignorar. Es más, al reconocer que hay estos problemas, se ayuda a mejorar el sistema evitándolos, ya sea con "workarounds" (por ejemplo el uso del Zedebee para comprimir ancho de banda y encriptar la conexión), o bien pidiendo a los desarrolladores que se solucionen estos inconvenientes.

Yo hace relativamente poco que uso Firebird, un poco más de un año y medio. Antes había usado HypersonicDB (Java), MySQL y MS Access. Y sabeis cual fue la primera limitación que encontre a Firebird, que los anteriores motores de bases de datos tienen? Los campos numericos autoincrementales. Será una tontería, pero para mi siempre será mucho más fácil definir un campo cómo "id INT NOT NULL AUTO_INCREMENT" que no definirlo cómo "id INT NOT NULL" y después crear un trigger para añadir el valor incremental...

mcs 30-09-2011 09:20:46

Me olvidaba, la falta de campos del tipo BOOLEAN tambien es un poco molesto... :P

Casimiro Noteví 30-09-2011 12:27:03

Para empezar, me gusta muchísimo PostgreSql y Firebird, y no tanto MySql.
El haber elegido usar firebird es porque por aquellos días había un grave problema con postgresql, era muy lento. Lo demás me encantaba, la verdad.
Pero las pruebas que hice, estoy hablando de 1998/99 (no existía firebird, era interbase), resultaron abrumadoramente superior la velocidad de interbase sobre postgresql.
Otro punto a favor de interbase (entre otros muchos) es que puedes desconectar el servidor (de la corriente eléctrica), o puedes resetear el equipo, y 'normalmente' nunca pasa nada, se recupera automáticamente como si no hubiese pasado nada. Resumiendo es rápido y seguro ante problemas físicos.
Yo sé que postgresql es muy potente, que tiene características muy interesantes, no lo descarto para futuros proyectos, pero centrándonos en lo que trata este tema: mysql.
Si tuviera que elegir entre mysql y firebird para lo que se usa hoy en día mysql (en la mayoría de casos), me parece mucho más acertado usar firebird, es mucho más pequeño, no consumo apenas recursos, es muy rápido, es muy seguro ante caídas/parones/desconexiones, etc.

Fuera de internet, sin embargo, postgresql lo usaría para proyectos de gestión para empresas rivalizando también con firebird.
Por ahí tengo una comparativa que hicieron hace años entre mysql, interbase, postresql y sapdb. Una de las pruebas que hicieron (además de las habituales de insertar muchos registros y haces cosas), fue la de conexiones persistentes y.... ya lo encontré, mejor pongo los enlaces al final de este texto.
Ahí dicen frases como:
* Mysql bajo pocas conexiones funcionó perfectamente, cumpliendo expectativas, pero no pudo con el Interbase en el tramo final.
* Interbase se lleva el premio de base de datos ideal para servidor Internet.


Hay que tener en cuenta que es de hace bastantes años, que todos han envolucionado, pero sirve de referencia para darnos cuenta que muchas veces son sensaciones, prejuicios, imagen, desconocimiento, etc. y lo que tenemos en nuestro cerebrito no siempre es la realidad de las cosas.
La máquina de test es un Pentium III 800Mhz con 256Mb RAM y un disco IDE de 20Gb. (ya hace tiempo, sí)

Aquí algunos datos que se ofrecen en la comparativa:

Código:

  Segundos en completar las 1000 peticiones
    MySQL    PostgreSQL    Interbase SAP DB
10p  312,66    752,74        225,30    305,31
10  325,22    943,40        212,42    300,03
20p  849,47    813,69        262,76    549,99
20  947,91    974,51        291,12    612,06
30p 1153,88    1620,00        377,75    763,76
30  1199,01    1468,79        408,23    806,18
40p Timeout    Error          681,38    timeout
40  Timeout  Error          683,29    timeout
50p Timeout    Error        timeout  timeout
50  Timeout  Error        timeout  timeout


        Peticiones servidas por segundo
    MySQL    PostgreSQL  Interbase SAP DB
10p 3,17      1,32        4,39      3,24
10  3,04      1,04        4,66      3,30
20p 1,17      1,21        3,77      1,80
20  1,04      1,01        3,40      1,62
30p 0,86      0,61        2,62      1,30
30  0,83      0,67        2,43      1,23
40p Timeout  Error        1,45      timeout
40  Timeout  Error        1,45      timeout
50p Timeout  Error        Timeout  timeout
50  Timeout  Error        Timeout  timeout

Código:

    Ratio de transferencia en Kb/seg
    MySQL    PostgreSQL  Interbase SAP DB
10p  763,40    317,09      1059,45  781,79
10  733,98    253,01      1208,55  795,54
20p  280,97    293,34      962,69    433,98
20  251,80    244,93      940,92    389,97
30p  206,85    147,34      664,13    312,52
30  199,07    162,50      658,69    296,07
40p  Timeout  Error        363,22    timeout
40  Timeout  Error        402,41    timeout
50p  Timeout  Error        timeout  timeout
50  Timeout  Error        timeout  timeout

Aquí está el enlace.

ASAPLTDA 30-09-2011 16:20:51

Cita:

Empezado por mcs (Mensaje 414129)
Hola,

Me parece que, excepto Delphius, soys un poco "fanboys" de Firebird.

Yo hace relativamente poco que uso Firebird, un poco más de un año y medio. Antes había usado HypersonicDB (Java), MySQL y MS Access. Y sabeis cual fue la primera limitación que encontre a Firebird, que los anteriores motores de bases de datos tienen? Los campos numericos autoincrementales. Será una tontería, pero para mi siempre será mucho más fácil definir un campo cómo "id INT NOT NULL AUTO_INCREMENT" que no definirlo cómo "id INT NOT NULL" y después crear un trigger para añadir el valor incremental...

Uso ibexpert, y lo que hice fue definir una tabla que llamo aaaa la cual tiene asociado un trigger, que ya manaja el autoincrmento y los 5 campos comnes en cada tabla, le dijo que la replique y ya tengo el esqueletro de la tabla , solo me toca decirle duplique tabla y fin del problema.

Pero de las cosas que me gustaria tener en firebird seria por ejemplo los campos tipo %row, ejemplo mi archivo de clientes aunque no uso todos los campos prefiero decir
campos %row
select * from clientes into w_row_clientes en ves de :
select codigo,nombre,direccion.... from clientes into :w_codigo, :w_nombre ............
por eso me daria facilidad de desarrollo de funciones/procedimientos enla base de datos
funciones
select cliente, f_get_nombrecliente(cliente) from mov_CXC where ....
Manejo de selects tipo bases cubos de datos, aunque por ahi hay un ejemplo que lo hace
select cliente,sum(ventas),mes from ventas, agrupado por cliente,(matriz(mes))
y el resultado fuera
cliente,ventas_mes01. ventas_mes02...

ahora muchas veces en la busqueda de una verdad inalcansable uno quiere que los procesos se hagan en la base de datos, otras veces se hagan en una capa intermedia,
uno quiere que se haga con un lenguajes externo a la base de datos o un lenguaje interno a la base de datos
creo de pronto como recomendo la ibm (as400) haga los procesos en la base de datos no la haga en los programas aunque la la base de datos de ibm maneja procedures/functions en lenguaje PLSQL o en lenguje externos RPG/COBOL/JAVA/...? hace muchos anos no los manejamos

Casimiro Noteví 30-09-2011 16:49:03

Todas tienen cosas interesantes, característica que nos gustaría tener en las demás, realmente todas son magníficas.

¿Qué es eso de los campos %row?, ¿una especie de variable?

Por cierto, aquí hay una buena comparativa entre postgresql y ms sql server, la hizo hace no mucho los de RedHat, usaron equipos bien potentes. Adivinad quién salió ganando la comparativa.

Código:

Hardware:
    Database:  2 x HP ProLiant DL370 G6
                Dual Socket, Quad Core (Total of 8 cores)
                Intel® Xeon® CPU W5580 @ 3.20GHz
                48 GB RAM
    Driver:    1 x HP ProLiant DL580 G5
                Quad Socket, Quad Core (Total of 16 cores)     
                Intel® Xeon® CPU X7350 @ 2.93GHz
                64 GB RAM
   
Software:
    Linux:    Red Hat Enterprise Linux 5.4  (2.6.18-164.el5)
    Database: Postgres Plus 8.3.8 

    Windows:  Windows Server 2008 R2 Enterprise
    Database: SQL Server 2008 R2


roman 30-09-2011 16:58:51

Cita:

Empezado por Chris (Mensaje 414126)
Eso sí, no me atrevo a exponerlo a la internet. Sería relativamente rápido averiguar la clave de SYSDBA.

Pero, ¿qué quiere decir esto? ¿Estás diciendo que firebird no sirve para internet? ¿Cómo se accede entonces remotamente? ¿Qué no puede cambiarse el usuario y contraseña?

Cita:

Empezado por Casimiro Notevi (Mensaje 414141)
Si tuviera que elegir entre mysql y firebird para lo que se usa hoy en día mysql (en la mayoría de casos), me parece mucho más acertado usar firebird, es mucho más pequeño, no consumo apenas recursos, es muy rápido, es muy seguro ante caídas/parones/desconexiones, etc.

Jamás he tenido un problema de seguridad con MySQL y, si vamos a eso, ni siquiera de velocidad ni tampoco de pérdida de datos por desconexiones, etc.

Si a veces la gente se fija una idea...

// Saludos

Chris 30-09-2011 17:22:27

Cita:

Empezado por roman (Mensaje 414177)
Pero, ¿qué quiere decir esto? ¿Estás diciendo que firebird no sirve para internet? ¿Cómo se accede entonces remotamente? ¿Qué no puede cambiarse el usuario y contraseña?

Si sirve, pero no es seguro. Haz una suposición: la contraseña de SYSDBA lo más probable es que tenga de 6 a 8 caracteres. Cuánto tomaría, en un ataque de fuerza bruta averiguar la contraseña? relativamente poco si tomamos en cuenta que la longitud máxima de una contraseña es 8 carácteres.

Saludos,
Chris

mcs 30-09-2011 17:24:29

Cita:

Empezado por Chris (Mensaje 414186)
Si sirve, pero no es seguro. Haz una suposición: la contraseña de SYSDBA lo más probable es que tenga de 6 a 8 caracteres. Cuánto tomaría, en un ataque de fuerza bruta averiguar la contraseña? relativamente poco si tomamos en cuenta que la longitud máxima de una contraseña es 8 carácteres.

Saludos,
Chris

Estás seguro de esto? :eek: Sólo 8 carácteres?? :eek: No hay ninguna forma de poner contraseñas más largas?


La franja horaria es GMT +2. Ahora son las 02:15:04.

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