228 meneos

Twitter planea cambiar MySQL por Cassandra DB

"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?)."

negativos: 2   usuarios: 139   anónimos: 89  
compartir:  twitter  facebook  tuenti  
  1. #3   #1 ¿Qué tonterías estás diciendo? MySQL no es gratuita, es libre. Y si es gratuita, ¿cómo es que puedfen cobrar por "cada usuario".

    Tonterías que hay que leer.
    454  votos: 47   link
    el 02-03-2010 09:08 UTC por gallir gallir
  2. #4   #1 #3 Hay dos tipos de licencia Mysql la GNU GPL y la de productos no GNU GPL, es decir... la licencia de uso de Mysql (que nada tiene que ver con los accesos de usuario) creo que solo se aplica en caso de re-distribución de una aplicación que no desarrollas bajo licencia GNU GPL, puedes tener un site comercial sin pagar absolutamente nada, mientras no lo redistribuyas vendiéndolo ya que se entenderá que parte de ese "paquete" que vendes es mysql... de no ser así muchos estamos infringiendo las condiciones. Mientras no exista redistribución yo entiendo que te puedes ceñir a la licencia GNU GPL. Este es el caso de twitter.

    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
    41  votos: 3   link
    el 02-03-2010 09:14 UTC por prestoso prestoso
  3. #5   #0 #2 fail whale
    298  votos: 31   link
    el 02-03-2010 09:14 UTC por qnight qnight
  4. #6   Sin ser experto en sistemas, cada día estoy más convencido que el combo Apache+MySQL se usa por inercia, frente a otras alternativas como Cherokee, Lighttpd o, en este caso, Cassandra DB.
    48  votos: 6   link
    el 02-03-2010 09:15 UTC por angelitoMagno angelitoMagno
  5. #8   #1 ¿Pero qué dices, alma de dios?
    66  votos: 7   link
    el 02-03-2010 09:46 UTC por juan juan
  6. #9   #4 En realidad, dado que la licencia es GPL, te da igual cuál sea la segunda licencia disponible. Puedes vender cualquier producto basado en MySQL, incluso derivado porque hayas modificado directamente su código. Eso sí, ateniéndote a las condiciones de la GPL.

    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.
    61  votos: 6   link
    el 02-03-2010 09:47 UTC por talibancillo talibancillo
  7. #10   Cuantas tonterías se leen en los comentarios...

    Por cierto, ¿donde están los del "NoSQL no tiene futuro"? :roll:
    18  votos: 1   link
    el 02-03-2010 09:49 UTC por DZPM DZPM
  8. #12   #10 Pensaba que era un nuevo programa de laSexta: No Sé Lo Que Hicisteis (sí, saltando letras, es lo que me ha parecido al primer vistazo) :-P
    10  votos: 0   link
    el 02-03-2010 10:42 UTC por culoman culoman
  9. #13   Una evidencia que no se menciona en ese artículo. ¿quién es el autor de los bindings de Cassandra para Ruby (lenguaje utilizado por Twitter)?

    "Copyright 2009 Twitter, Inc."

    github.com/fauna/cassandra
    87  votos: 8   link
    el 02-03-2010 10:48 UTC por crowhunter crowhunter
  10. #14   No esta diciendo nada malo. Mysql tiene sus limites de la misma forma que sus grandes ventajas por agilidad y facilidad.

    yo apostaria por PostgreSQL pero eso es cuestión de gustos.
    7  votos: 0   link
    el 02-03-2010 10:58 UTC por anakein anakein
  11. #15   #1

    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.
    8  votos: 0   link
    el 02-03-2010 11:06 UTC por albandy albandy
  12. #16   #all Equivocacion....Me referia a SQL Server, no a MySQL, toma cagadón !!
    52  votos: 5   link
    el 02-03-2010 11:12 UTC por kampanita kampanita
  13. #17   #15, #8 #4 #3 Equivocación....Me referia a SQL Server, no a MySQL, toma patadón que he metido... !!
    48  votos: 5   link
    el 02-03-2010 11:17 UTC por kampanita kampanita
  14. #18   #7 Que no se me malinterprete. No quiero decir que me parezca que MySQL sea un mal motor de BDs. Pero como tu bien dices hay casos donde es mejor usar otros sistemas, Cassandra en este caso, PostGreSQL en otros.

    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.
    12  votos: 0   link
    el 02-03-2010 11:20 UTC por angelitoMagno angelitoMagno
  15. #19   #18 Siempre puedes contratar un servidor virtual y ponerle lo que te rote.
    18  votos: 1   link
    el 02-03-2010 11:27 UTC por albandy albandy
  16. #20   #17 Y SQL Server es gratuito?
    23  votos: 2   link
    el 02-03-2010 12:20 UTC por sieteymedio sieteymedio
  17. #21   #0 #2 y #5 estais hablando del failgual de windows?
    6  votos: 0   link
    el 02-03-2010 12:41 UTC por pedrobotero pedrobotero
  18. #22   #1 HOYGAN LA MYQLS NO ES GRATIX PEO IO PUEDO JUANKEARLA PA TENER UZUARIO SIN PAJAR LISENSIA
    6  votos: 0   link
    el 02-03-2010 12:41 UTC por sinKA sinKA
  19. #23   #14 xD xD Postgresql dice, lo que te enseñaron en ESI es para que te familiarices con el lenguaje/comandos estándares que se utilizan en las bases de datos, no te flipes con el postgres.
    16  votos: 1   link
    el 02-03-2010 12:44 UTC por sinKA sinKA
  20. #24   #20 tampoco hay que quemarse, eh? que ya admitió el error xD
    7  votos: 0   link
    el 02-03-2010 12:47 UTC por seta_roja seta_roja
  21. #25   #23 Deberías mirar las extensiones de PostgreSQL y alguna comparativa antes de hacer comentarios tan gratuitos.

    www.postgresonline.com/journal/index.php?/archives/51-Cross-Compare-of,MySQL,and-PostgreSQL.html
    16  votos: 3   link
    el 02-03-2010 12:51 UTC por albandy albandy
  22. #26   #0 #5 #2 o no más fail vale ... por poder...
    14  votos: 0   link
    el 02-03-2010 13:04 UTC por Pecinejo Pecinejo
  23. #27   #25 Si no digo que sea malo, pero esque no le veo sentido nombrarlo en este meneo.
    6  votos: 0   link
    el 02-03-2010 13:07 UTC por sinKA sinKA
  24. #28   Más que el cambio de base de datos en concreto, lo importante es el cambio del tipo de base de datos, de relacional a no relacional.
    9  votos: 0   link
    el 02-03-2010 13:08 UTC por viktor viktor
  25. #29   La cuestión del cambio no es tanto "un motor u otro" sino "una filosofía de almacenamiento u otra". MySql es una base de datos relacional, basada en tablas y las relaciones entre ellas, mientras que Cassandra es una base de datos clave/valor, donde lo que se tiene es uno o más diccionarios en los que, para cada clave, se puede almacenar un valor.

    Desde 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 :-)
    78  votos: 9   link
    el 02-03-2010 13:13 UTC por Leidanpir Leidanpir
  26. #30   El mismito problema teníamos en la nave Interprise. Que si actualizar el hardware de la computadora central utilizando un software libre o comercial. Al final optamos por software libre porque total como lo paga la federación intergaláxica de planetas unidos... Mister Spock ha hablado...
    18  votos: 2   link
    el 02-03-2010 13:15 UTC por misterspock misterspock
  27. #31   MySQL que es de pago cuando necesitas configuraciones avanzadas (clúster, etc).
    6  votos: 0   link
    el 02-03-2010 13:43 UTC por guebmaster guebmaster
  28. #32   #13 Tenía entendido que los de Twitter dejaron atrás Ruby, y creo (digo "creo" porque ahora mismo no se si me estoy confundiendo con otro proyecto) que pasaron a Scala.
    6  votos: 0   link
    el 02-03-2010 14:11 UTC por toomany toomany
  29. 25  votos: 2   link
    el 02-03-2010 14:40 UTC por kahun kahun
  30. #34   En el trabajo tenemos una base de datos MySQL con SEIS MILLONES de registros y 300Mb de datos y va como un tiro. Y eso que apenas tiene índices bien puestos y usa el viejo motor MySam.

    No he probado otras, pero la verdad es que no veo necesidad de cambiar...
    13  votos: 2   link
    el 02-03-2010 14:42 UTC por Pablosky Pablosky
  31. #35   #34 a parte de que los 300MB son bastantes pocos, sabes todo lo que tiene twitter? me parece normal que quieran mover a otros sistema más escalable.

    Ahora creo que tienen unos 15mil twitts por minuto, son casi 22 millones de registros AL DÍA.
    15  votos: 1   link
    el 02-03-2010 15:22 UTC por Bad_CRC Bad_CRC
  32. #36   #35 justo lo que iba a comentar... seis millones de registros son lo que genera twitter en unas horas...
    6  votos: 0   link
    el 02-03-2010 15:26 UTC por pinx pinx
  33. #37   Me vine a leer los comentarios a ver si alguien ha probado Cassandra,...alguien?, alguien?
    16  votos: 1   link
    el 02-03-2010 15:32 UTC por jptob jptob
  34. #38   #2 Es aquí donde no cabe duda? Gracias.
    17  votos: 1   link
    el 02-03-2010 15:52 UTC por josemaripili josemaripili
  35. #39   #34 sin ánimos de ofender, pero hay que tener bastante imaginación para comparar una base de datos de 300Mb con la de Twitter, y encima concluir que, por que la primera anda, el cambio es innecesario...!
    6  votos: 0   link
    el 02-03-2010 16:11 UTC por Magicus Magicus
  36. #40   #34
    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 ;)
    10  votos: 0   link
    el 02-03-2010 16:19 UTC por DZPM DZPM
  37. #41   Yo intente usar Simple DB para usar de remplazo del cache, pero el problema es que las consultas no estaban actualizadas al momento.
    6  votos: 0   link
    el 02-03-2010 18:52 UTC por Draka Draka
  38. 6  votos: 0   link
    el 02-03-2010 20:33 UTC por guebmaster guebmaster
  39. #43   #42 ¿Sabes distinguir entre la versión Community y la Enterprise?

    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.
    17  votos: 1   link
    el 03-03-2010 09:51 UTC por kahun kahun
comentarios cerrados

menéame