2021
"Ryan King es ingeniero de Twitter y le dijo al blog MyNoSQL que están planeando cambiar su bases de datos en MySQL por una base de datos Cassandra debido a la escalabilidad y a la gran comunidad de desarrolladores . Actualmente Twitter funciona en un cluster de servidores MySQL con un sistema de cache que cada vez es menos efectivo debido a su crecimiento. Necesitan un sistema para crecer de forma mas automática y de alta disponibilidad (¿no mas fail wale?)."
menéame
Tonterías que hay que leer.
Y es que el problema nada tiene que ver con esto, es un problema de escalabilidad y disponibilidad, el CTO no es tonto y las bondades de column family o la consistencia eventual en proyectos de ese tamaño son bastante atrayentes
La segunda licencia es una a la que te puedes acoger voluntariamente. De hecho, según dice la wikipedia "Users may choose the GPL,[29] which MySQL has extended with a FLOSS License Exception. It allows Software licensed under other OSI-compliant open source licenses, which are not compatible to the GPL, to link against the MySQL client libraries.[30]". Es decir, que no sólo es GPL si no que ha sido extendida para facilitar que enlaces librerías no GPL con MySQL.
Como digo, la segunda licencia te autoriza a NO seguir las normas de la GPL, por ejemplo, no estando obligado a redistribuir el código o los cambios que hayas hecho.
Por cierto, ¿donde están los del "NoSQL no tiene futuro"?
"Copyright 2009 Twitter, Inc."
github.com/fauna/cassandra
yo apostaria por PostgreSQL pero eso es cuestión de gustos.
es.wikipedia.org/wiki/MySQL#Qu.C3.A9_licencia_utilizar
La licencia GNU GPL de MySQL obliga a que la distribución de cualquier producto derivado (aplicación) se haga bajo esa misma licencia. Si un desarrollador desea incorporar MySQL en su producto pero desea distribuirlo bajo otra licencia que no sea la GNU GPL, puede adquirir una licencia comercial de MySQL que le permite hacer justamente eso.
Igualmente hay casos en que Apache no es la solución más óptima al lado de otras opciones también existentes, y también libres.
Sin embargo creo que en el 90% de los casos ni se plantea esta cuestión a la hora de iniciar un proyecto. De hecho solo hay que ver las ofertas de hostings que hay por ahí. Es muy difícil encontrar alguién que te ofrezca alguna que no sea Apache o MySQL, dejando aparte IIS+MsSQL, apenas hay alternativas.
www.postgresonline.com/journal/index.php?/archives/51-Cross-Compare-of,
MySQL,and-PostgreSQL.htmlDesde hace tiempo, las webs que necesitan escalar a lo bestia vienen usando mysql y poniendo por encima una cache en memoria (con memcached) que en realidad es como una base de datos clave/valor, pero que no es capaz de guardarse en disco. Lo que se acaba haciendo es un poco de contorsionismo con mysql para que los datos se puedan sacar de ahí y meter en el memcached de la forma más eficiente posible.
Al final, resulta que merece la pena plantearse si no es mejor tener una base de datos clave/valor, y que ella gestione qué va a tener en la caché en memoria, y qué va a ir guardando en disco para usar en otro momento. A mí me parece muy lógico que Twitter explore esa vía, y de hecho voy a estar atento a lo que digan en un futuro al respecto, porque desde luego va a ser toda una prueba de fuego para este enfoque totalmente clave/valor desde la raíz.
Espero haber arrojado un poco de luz
No he probado otras, pero la verdad es que no veo necesidad de cambiar...
Ahora creo que tienen unos 15mil twitts por minuto, son casi 22 millones de registros AL DÍA.
En las bases de datos pequeñitas, como la tuya, no hay problemas de escalabilidad.
Yo te puedo hablar de una que crece esos "6 millones/300 MB" cada día. Entonces sí que aparecen problemas, te lo aseguro
www.mysql.com/products/which-edition.html
Claro que puedes pagar por usar MySQL, del mismo modo que puedes pagar incluso por usar Ubuntu, porque se paga por el soporte majete.