MariaDB es un sistema de gestión de base de datos con licencia GPL, derivado como fork o bifurcación de MySQL, líder tradicional en su segmento. En la actualidad hay más de seis millones de copias de MySQL funcionando, lo que supera la base instalada de cualquier otra herramienta de bases de datos. MySQL es una base de datos enormemente popular en aplicaciones web: suele estar vinculada a blogs como WordPress, Drupal, o en general, al uso de PHP. Desarrollada inicialmente por MySQL AB, compañía fundada por David Axmark, Allan Larsson y Ulf Michael «Monty» Widenius, MySQL carecía de algunos de los elementos considerados fundamentales en las bases de datos relacionales, como integridad referencial o transacciones, pero a pesar de ello, atrajo a muchos desarrolladores de páginas web con contenido dinámico por su simplicidad. La evolución de su desarrollo ha ido cubriendo progresivamente estas carencias, y la llevaron a convertirse en el claro líder en su segmento.
Tras la primera versión lanzada en 1995 y tras una evolución que podríamos calificar como enormemente exitosa, MySQL AB, después de pasar una larga temporada especulando con posibles inversiones e incluso con la posibilidad de una salida a bolsa, fue adquirida en enero de 2008 por Sun Microsystems por mil millones de dólares. Y poco tiempo más tarde, en abril de 2009, Oracle anunció la adquisición de Sun Microsystems, en la que Java y MySQL eran piezas muy importantes vistas por los analistas como oportunidades de muy alto potencial, muy escasamente aprovechadas. Y precisamente fue MySQL lo que estuvo a punto de condicionar toda la operación de adquisición, cuando uno de sus cofundadores originales, Monty Widenius, llamó a preservar la internet libre y a salvar MySQL, y promovió que la base de datos fuese excluida de la operación debido a la concentración de mercado que implicaba. La campaña tuvo muchísimo apoyo, pero una serie de promesas de Oracle con respecto a la salvaguarda del futuro del desarrollo de MySQL (que fueron valoradas por Widenius como «promesas vacías«) y una muy intensa labor de lobbying revelada en uno de los cables publicados por WikiLeaks consiguieron que la adquisición fuese finalmente aprobada por las autoridades antimonopolio de la UE.
Poco después de la operación, Oracle dejó perfectamente claras sus intenciones de acabar con todo posible desarrollo de MySQL: retrasó inversiones y desarrollos, dejo de sincronizar los cambios con los repositorios públicos, mezcló componentes no libres en su desarrollo y, en general, se aseguró de alienar completamente a la comunidad de desarrollo del producto, incumpliendo de manera patente las promesas que había hecho hacía tres años. Exactamente como Monty Widenius había dicho que iba a ocurrir.
Pero dejemos de hablar de la triste historia de MySQL y de cómo Oracle no quiso ver la gran oportunidad que suponía continuar su desarrollo, y pasemos a MariaDB: la particularidad de MariaDB es que está desarrollada precisamente por Michael «Monty» Widenius, que había abandonado Sun Microsystems y fundado su propia compañía en febrero de 2009. Maria es el nombre de su hija menor. En realidad, con MariaDB, Monty Widenius ha vuelto a hacer lo que ya había demostrado saber hacer: crear un gran proyecto de base de datos, volver a reunir a una gran comunidad de desarrolladores en todo el mundo, y generar un producto que ya supera a la propia MySQL. El versionado de MariaDB deja claro que soporta todas las características de MySQL hasta la versión 5.5, pero a partir de ahí, inicia su desarrollo independiente dando un salto a las versiones 10 y en adelante, y mejora las características de los escasísimos desarrollos que se generaron en MySQL desde su caída en manos de Oracle.
¿El resultado? Una base de datos que comienza a ganar en popularidad, que ya ha recibido espaldarazos tan importantes como su adopción por parte de la Wikimedia Foundation o por varias distribuciones de Linux, y que muy posiblemente en poco tiempo haya sido capaz de captar a una gran mayoría de la base de usuarios que tenía MySQL. A ojos de la comunidad de desarrolladores, MySQL es en gran medida un proyecto muerto: como su fundador dice, ya no existe ninguna razón para usar MySQL.
La historia es interesante por lo que tiene de lucro cesante, de auténtica destrucción de valor por parte de una compañía que, enfrentada con la posibilidad de seguir desarrollando una comunidad de usuarios y creando servicios para ella, decidió abandonar su desarrollo. Para Oracle, el mercado de usuarios de MySQL carecía aparentemente de atractivo: en ningún momento se encontró cómoda pensando en desarrollar productos o servicios para él, lo veía completamente diferente a su mercado corporativo tradicional. En el fondo, una muestra de la incapacidad de una compañía para entender el software libre y crear valor con él. Mientras algunas empresas aprenden a apalancar sus inversiones en investigación y desarrollo sobre las comunidades de software libre, desarrollan estrategias de innovación basadas en el software libre como plataforma, o incluso crean compañías que entran en el S&P500, otras lo desprecian y destruyen valor incumpliendo sus promesas de manera intencionada. Una historia interesante que enfrenta a Oracle, una compañía de casi cuarenta mil millones de facturación, con una persona, Monty Widenius… y en la que todo apunta a el segundo tiene todas las de ganar. Veremos donde está MySQL en no demasiado tiempo. Y veremos dónde está MariaDB.
ACTUALIZACIÓN (14/09/2013): Google abandona MySQL y se pasa a MariaDB.
ACTUALIZACIÓN (22/09/2013): Facebook y Twitter deciden actualizar una versión más de MySQL, pero se plantean la migración a MariaDB.
Llevo pensando algo parecido acerca de la actitud de Oracle durante mucho tiempo y cada vez estoy más convencido de que se equivocan. Más aún cuando se ven compañías como 37signals que hacen productos cojonudos y tienen una postura alucinantemente abierta con el software libre. Muchos de sus programadores mantienen proyectos enormes (como el framework ruby on rails por ejemplo) que no solo les ayudan en su trabajo día a día, sino que ayudan a muchos otros programadores.
Lo bueno del software libre en estos casos es que la comunidad se realimenta, los proyectos crecen y mejoran cada día y además aportan un gran valor a las empresas, tanto a las creadoras como a las que simplemente los usan.
RAE:
billón: (Del fr. billion, de bi, por bis, y la t. de millón).
1. m. Mat. Un millón de millones, que se expresa por la unidad seguida de doce ceros.
Oxford dictionary:
number (plural billions or (with numeral or quantifying word) same) the number equivalent to the product of a thousand and a million; 1,000,000,000 or 10^9.
En la noticia enlazada pone: «agreed to pay $800 million in cash and assume $200 million in options».
En español se debe hablar de 1000 millones.
Un saludo
Habiendo vivido la historia bastante de cerca hace un tiempo lo que cuentas no me sorprendes, aunque no esté de acuerdo con alguna de la conclusiones.
La adquisición de mySQL por parte de Sun fue una más de las decisiones absurdas de una compañía que ya tenía un histórico de destrucción de compañías de Software bastante amplio, Sun llego a tener tres servidores de aplicaciones distintos e incompatibles entre sí,.. matando además los dos más extendidos en sus clientes.
Sun fue absolutamente incapaz de rentabilizar la compra, las operaciones más grandes a nivel mundial de MySQL eran totalmente ridículas (100k dólares) en comparación con lo que se pagó, cerca de un billón USD creo recordar.
Además Sun no era una compañía de servicios, o no era su core de negocio, con lo que nadie sabía muy bien qué hacer con aquello…
Con esos antecedentes la estrategia de Oracle era clara, no invertir ni un duro en MySQL a la que utilizarían como caballo de Troya o como opción barata ante otras bases de datos.. hasta que muriese.
Oracle vive de los grandes proyectos de bases de datos, ahora uniendo HW y SW, operaciones que dejen el mayor margen de licencias posible, vive de vender contratos a largo plazo, de fomentar la instalación de sus base de datos con todas las opciones en todos los lugares posibles. Ha sido la opción por defecto para tareas de misión crítica muchos años, ya no, y creo que por ello solo vio a MySQL como una mosca incomoda que distraía a sus clientes.
En cuanto al fork, a MariaDB, me parece un competidor a vigilar, pero no un actor serio en el mundo corporativo, apps tier 1, bases de datos de misión critica..app de negocio, como tampoco lo fue MySQL fuera del apps puntuales (eso si, muy frecuentes)
MariaDB ganará la batalla cuando se utilice masivamente en los gestores de contenidos wordpress, joomla o drupal. Y para eso no tendremos que espera mucho tiempo.
#003: De acuerdo en que son productos que actúan en principio en mercados diferentes, pero no por ello deja de ser un mercado con muchas posibilidades de desarrollo de negocio, y que va comiendo terreno al otro a medida que van mejorando sus limitaciones y prestaciones.
Ya que sacas el tema, me parece muy interesante cómo el concepto «mission critical» se ha ido volviendo progresivamente difuso aquí, o al menos se ha hecho más difuso a medida que han ido bajando las barreras de entrada al desarrollo. Yo diría que si bien antes se consideraban críticas solo las bases de datos transaccionales de las grandes compañías clásicas, ahora las cosas son críticas o no en función de quien juzga su condición de críticas, y hay aplicaciones web enormemente populares que se asientan en MySQL… ¿cómo de crítica sería una caída en la base de datos de una publicación con miles o millones de lectores que impidiese temporalmente que sus páginas o su publicidad estuviesen disponibles? Hablamos de pérdidas potenciales elevadas, de mucho dinero, y sin embargo hay muchos proyectos en esa industria que utilizan MySQL…
El FUD que se está haciendo contra Oracle ya llega a niveles que rozan lo ridículo y aunque como campaña de marketing me parece que da sus resultados, preferiría ver a la gente hablar de lo que ofrece MariaDB en lugar de soltar mentiras y medias verdades a diestro y sinietro.
La relación de Oracle con MySQL empieza muchísimo antes de la compra de SUN. Recordemos que el único engine transaccional que incluye MySQL es InnoDB, creado por la empresa Innobase. Creo que fue por el 2005 cuando Oracle compró Innobase, por lo tanto, la parte más importante de MySQL es de Oracle desde entonces. ¡5 años antes de la compra de SUN! Fue entonces cuando todo el mundo se empezó a echar las manos a la cabeza. Monty dijo que eso acabaría con MySQL y se decidió a hacer su propio engine llamado Aria. ¿Qué pasó? Que el desarrollo de InnoDB no se paró, si no que continuó con más fuerza gracias a Oracle.
Entonces pararon el desarrollo de Aria y empezaron con MariaDB, que en un principio no era más que una variación de MySQL con mejoras en la parte de optimización. Se suponía que Oracle iba a acabar con MySQL tras la compra de SUN… ¿qué pasó? Que no solo el desarrollo de MySQL se mejoró, si no que las versiones que se liberaban (como 5.5 o la reciente 5.6) tienen una calidad mucho mayor que cualquiera de las versiones liberadas anteriormente por Sun o la propia MySQL AB. Quizás en parte por que han triplicado el número de ingenieros de QA que tiene en nómina para MySQL. Oracle ha dejado tan claras sus intenciones de acabar con MySQL que ya está desarrollando la versión 5.7 e incluso envía a sus ingenieros a dar charlas a conferencias de la comunidad, como la reciente Percona Live.
Decir «escasísimos desarrollos» es otra prueba de que se habla de oídas sin datos. Por poner una lista:
– Replicación GTID en 5.6. Algo que se lleva AÑOS pidiendo lo tenemos.
– Replicación semi-síncrona.
– Soporte FULLTEXT en InnoDB
– ALTER TABLE onlines
– Tablespaces transportables
– Posibilidad de hacer dump del buffer pool para evitar problemas de rendimiento tras un reinicio
– Soporte IPv6
etc. etc. Es tontería seguir listándolo cuando está todo en la documentación. Sólo hay que comparar las release notes de 5.0 5.1 (MySQL AB y Sun) con las 5.5 y 5.6 (Oracle) para ver que el desarrollo no está parado, si no que es más rápido y con mejor calidad que nunca.
Otro tema que la gente ha usado para FUD, que Oracle ha desarrollado algunos plugins propietarios, como autenticación PAM y thread pool. No me parece mal, son plugins que una pequeña parte de la gente necesita, es más, seguro que son desarrollos financiados por los propios clientes de Oracle. Cuando la gente se queja de esto, parece olvidarse que durante años (antes de Oracle) la única solución para hacer un backup en caliente ha sido InnoDB Hot Backup, privativo, cerrado y de pago. Una herramienta mucho más útil que un thread pool, y no he visto a nadie echarse las manos a la cabeza. Pero si lo hace Oracle, mal!
Por favor, si queremos hablar de MariaDB y de su producto, hablemos de eso. Tiene cosas buenas y hay mucho que comentar sobre ello, pero el FUD contra Oracle debería terminar ya. Porque por lo general se basa en mentiras, medias verdades y lo que busca es atraer gente a MariaDB no por su calidad (que la tiene) si no por el miedo.
Si realmente se quiere saber que hace Oracle con MySQL, lo mejor es preguntárselo a ellos:
http://www.youtube.com/watch?v=OpHTV59I1gs
Ejemplo: Wikipedia ha empezado a migrar sus bases de datos desde MySQLAtFacebook (fork de MySQL 5.1 con parches FB) a MariaDB 5.5 http://blog.wikimedia.org/2013/04/22/wikipedia-adopts-mariadb/
O sea que este personaje primero vende mysql por mil millones de dólares y ahora se hace el ofendido por el capitalismo y quiere repetir la jugada y que le sigamos?
No haber vendido mysql.
Yo viví la absorción de Sun desde dentro de Oracle (por cierto allí fué donde te conocí, gracias por el libro ;-)) y estaba claro que el software libre no encajaba en el modelo de negocio del tio Larry, si Sun hubiera sabido rentabilizar sus productos de software libre igual Oracle hubiera podido continuar el negocio, pero no era así y la opción fácil una vez aprobada la absorción era liquidar MySQL, intentar venderles su base de datos a los clientes que pagaban por ella y eliminar la opción gratis para los demás con la esperanza de que algún día acabaran pagando por sus otros productos, lo que demuestra bastante poco conocimiento de como funciona el mundo del software libre, si eliminas una opción aparecerá otra mejor, la comunidad es mucho más fuerte que cualquier corporación.
#008: «¿Ofendido por el capitalismo?» Yo diría que mezclas cosas sin demasiado criterio. Lo que le ofende es que el proyecto pierda su componente libre, y por eso crea otro. En cuanto a seguirlo, puedes seguirlo o no, es cosa tuya, yo solo hablo de mi interpretación del tema, y creo que le va a ir bien.
#007: Ya tenías ese mismo vínculo en la entrada original :-)
#006: Miguel Ángel, yo no tengo absolutamente ninguna razón para hacer FUD a Oracle, compañía con la que tengo una espléndida relación desde hace muchísimos años y con la que de hecho estoy trabajando ahora mismo. Yo solo hablo de cómo se ven las cosas desde el otro lado: Oracle lo ha hecho fatal y ha sido capaz de alienar a toda una comunidad de desarrollo aplicando las filosofías equivocadas. Eso es lo verdaderamente importante, y lo que de hecho ha condicionado lo que va a venir después. Los siguientes pasos, como bien dice Rodrigo en #004, es que gestores de contenidos como WordPress, Drupal o Joomla adopten oficialmente MariaDB (ya están soportados), y Oracle habrá conseguido cargarse una marca que tuvo un enorme prestigio, habrá conseguido destruir valor. Eso es lo que importa: no solo es lo que haces, sino también cómo lo haces. Oracle escogió el camino equivocado y ha demostrado no saber relacionarse con el mundo del software libre. Y por tanto, ha perdido.
#10 El problema de Oracle es que no sabe comunicarse con la comunidad, que es algo muy diferente a decir «escasísimos desarrollos» o criticar políticas tomadas por Oracle que son iguales que las que tomo SUN o la propia MySQL AB que si no me equivoco (si lo hago que me corrija alguien) fueron quienes crearon MySQL Enterprise de pago. Imagínate la que se hubiese montado si MySQL Enterprise hubiese sigo creada por Oracle, el holocausto.
Respecto al problema de comunicación de Oracle con la comunidad es algo que desde hace unos meses han empezado a trabajar en ello. Si alguno sigue el MySQL Planet verá que el número de posts con el icono de «employee» aumentó significativamente. Incluso participan dando charlas en eventos de MySQL no patrocinados por ellos, cosa que nunca ha pasado. Y si, queda mucho por mejorar. Pero esto es un problema totalmente diferente.
Respecto a la opinión que tiene la comunidad y los desarrolladores de Oracle yo al menos solo encuentro artículos con entrevistas a Monty o firmados por el. Siendo parte interesada hay que tomarse sus opiniones como lo que son, una opinión personal basada en intereses.
Cuando en 2005 Oracle compró InnoDB esto es lo que se decía:
«I hope, for the sake of the community and the company (I’ve known many MySQL employees for years), that Oracle is true to their promises. But it is Oracle, so I’m naturally skeptical.»
http://jeremy.zawodny.com/blog/archives/005490.html
«At the time of writing, the long-term direction of InnoDB is not clear.»
http://sql-info.de/mysql/oracle-acquires-innodb.html
8 años después, aquí seguimos, con la misma discusión :)
#005 Misión crítica o no, “that is the question”… de acuerdo contigo, no solo es difuso, es que para un cliente TODO es misión crítica en la fase de toma de requisitos … eso si, conforme ven la complejidad y los costes las cosas se racionalizan, al final tener una arquitectura de cinco nueves es un tema de dinero, y es el cliente el que define si compensa o no.
Nace con vocación de líder, atentos, esto huele a trabajo bien hecho
Conozco a Oracle desde hace muchos años, todas las empresas que han comprado han acabado fagocitadas por la base de datos.
Todavia tiene productos muy buenos como Weblogic o Tuxedo que se alejan de esa mania de llevar la base de datos a todos los sitios.
Oracle queria a Sun por el Hardware y le importaba poco OpenOffice, Java, Solaris o MySQL.
No es que no conozcan el mundo del software libre, es que su negocio es otro.
Fui desarrolador de MySQL casi desde su inicio. Cuando Oracle «jodió» y corrompió la esencia de MySQL me pasé a otras alternativas, como PostgreSQL (la cual recomiendo). MariaDB, sin duda alguna, mantiene ese espíritu que consolidó un producto libre y amado por todos.
Enrique te cito:
«adelante, y mejora las características de los escasísimos desarrollos que se generaron en MySQL desde su caída en manos de Oracle.»
Puedes comprobar los datos que te esta dando Miguel Angel y veras que esa afirmación es falsa. Luego en los comentarios dices que el problema para ti son las formas o filosofía de Oracle pero en el articulo no vas por esa linea. Eso si, rectificar es de sabios, incluso si es con comentarios.
Es interesante la Licencia de MariaDB, que es más clara y permisiva:
En vez del cliente de MySQL-GPL/Priv, usa uno LGPL, con lo que se acabaron las dudas de si tu software que usa MySQL tiene que ser GPL o no.
Tiene buena pinta
Programadores capaces de escribir una base de datos como era MySQL 3 hay una cantidad difícilmente numerable. El éxito de MySQL no fue debido mayormente a Monty Widenius, él tiene su mérito innegable, pero fueron Mårten Mickos y Zack Urlocker quienes posicionaron MySQL como el motor de base de datos de las webs pequeñas, primero, y no tan pequeñas a continuación. MySQL 3 era un producto «crapy» funcionalmente muy limitado, y ese es el mérito: conquistar cuota de mercado con un producto técnicamente inferior. MariaDB lleva ¿cuantos años? intentando captar clientes de MySQL ¿y por qué no lo acaba de conseguir? Porque no es debido (sólo) a la tecnología que un producto se convierte en estándar de mercado. Es marketing, marketing, marketing.
Muy interesante, muchas gracias por la información. Espero que MariaDB pronte termine por sustiruir a MySQL
Una entrada muy interesante, y que origina muchas flames wars sobre software libre. La verdad que me resultaría muy interesante tú opinión al respecto, acerca del software libre, la free software fundation, Richard Stallman y la libertad de no tener que usar software privativo. La verdad es que la filosofía de la libertad es muy buena y parece lo justo, aunque eso no es lo que opinan los que venden, claro.
La BD más instalada actualmente no es MySQL, es Sqlite: dispositivos iOS, Android, teléfonos de gama baja.
Pues no se, estas cosas me hacen descojonarme un poco. El tipo del Mariadb haciendo una cruzada contra los malos tiranos capitalistas de oracle, él es el che guevara de la informatica que abrirá el código para todos los geeks :P
Yo he usado y seguire usando mientras pueda myslq, me ha ayudado en mi trabajo. SIN GASTAR UN € he tenido un pedazo programa, y paso de que un tipo que vendió mysql en su momento aparezca ahora llamando a los cruzados del opensource. Por supuesto todos los borregos lo siguen y van diciendo cosas como muerte a Oracle y Mariadb lo mejor, y mas de uno aun estará en la uni, y habra tocado 2 veces las teclas, creyendose un picacodigo de pro y alabando el gentoo.
Hay veces que pienso que la informatica es el mayor nido de geeks del universo, y están todos concentrados en el linux y opensource.