2010-04-09 17 views
7

¿Debo usar Cassandra para un proyecto de 100.000 usuarios? En MySQL 5, tengo búsqueda de texto completo y partición de tabla. Estoy comenzando un Q & Un sistema como SO con CodeIgniter. Es un paso de vBulletin a un nuevo sistema. En el viejo sistema vBulletin tenía 100,000 usuarios, con un total de correos contados alrededor de 80,000. En los próximos 3 o 4 años, espero que haya más y más usuarios y publicaciones. Entonces, ¿debería usar Cassandra en lugar de MySQL 5?Cassandra o mysql 5? ¿Cuál será bueno para el futuro?

Si uso Cassandra, tengo que cambiar de Grid-Service a Dedicated-Virtual hosting en Media Temple. Debido a que Cassandra no se proporciona como parte de un sistema de alojamiento, necesito usar una solución de servidor VPS o DV. Si utilizo MySQL, el alojamiento no es un problema, pero ¿qué hay de las actuaciones, la velocidad de búsqueda?

Por cierto, ¿qué base de datos está utilizando Stack Overflow?

+1

Bueno, lo primero que debe asegurarse es si desea una base de datos SQL o una base de datos NoSQL, p. Cassandra. Es una arquitectura fundamentalmente diferente. – Gordon

+1

Stackoverflow utiliza SQL Server 2008. Lo siguiente puede ser una lectura interesante: http://highscalability.com/blog/2009/8/5/stack-overflow-architecture.html – ChristopheD

+0

sí. noSQL o base de datos SQL. En el futuro, RDB puede morir? – saturngod

Respuesta

6

Dice 100.000 usuarios, pero ¿cuántos usuarios concurrentes?

Cassandra no se construye en el sistema de hospedaje

El uso de un servicio alojado en un único servidor sugiere una operación de pequeña escala muy - y, obviamente, su limitado por su presupuesto. Ciertamente, no hay ninguna ventaja al ejecutar Cassandra en un solo nodo de servidor.

en MySQL 5 tienen de búsqueda de texto completo

que no es una solución muy escalable - que sin duda debe considerar el uso de una búsqueda normalizado (que yo creo que tendría que hacer si emigraban a Casandra de todos modos).

Dado que puede escalar cómodamente la solución MySQL a múltiples bases de datos utilizando replicación incluso antes de pensar en una solución completamente en clúster y obviamente no tiene el presupuesto para hacer su propio alojamiento, la migración a Cassandra parece una superación masiva .

+0

gracias. Voy a cambiar a dv en el futuro. Ahora, me estoy ejecutando en mediatemple gridserver. ¿Qué es una búsqueda normalizada? – saturngod

8

A partir de la información que proporcionó, le sugiero que se quede en MySQL.

Así como una nota lateral, Facebook fue el uso de MySQL en un primer momento, y, finalmente, se trasladó a Cassandra solamente después de que se estaba almacenando más de 7 terabytes de datos de buzón de entrada, por más de 100 millones de usuarios.

Wikipedia también handles hundreds of Gigabytes de datos de texto en MySQL.

+0

Gracias. ¡estupendo! información para mí – saturngod

1

yo no recomendaría el uso de Cassandra en su caso por las siguientes razones:

  1. Cassandra necesita una buena comprensión de la aplicación que se está construyendo. Será mucho más difícil hacer cambios y ejecutar consultas complejas contra los datos almacenados en Casandra. SQL es más flexible y más fácil de mantener. Cassandra es buena cuando necesitas almacenar grandes cantidades de datos y cuando sabes exactamente cómo se accederá y ordenará la información almacenada en Casandra.

  2. Mysql funciona bien para millones de filas si se crean correctamente los índices.

  3. Si encuentra algunos cuellos de botella en el futuro con mysql, puede ver cuáles son exactamente sus problemas y escalarlos usando cassandra. Quiero decir que debes ser capaz de combinar ambos enfoques: SQL y noSQL en el mismo proyecto.

Con respecto al índice de texto completo de mysql, puedo decir que es inútil. Quiero decir que funciona demasiado mal para ser utilizado en proyectos de alta carga. Mira sphinxsearch.com, que es una gran implementación de búsqueda de texto completo para bases de datos SQL.

Pero si espera que su sistema crezca rápido y sirva a millones de usuarios, debería considerar cassandra desde el principio.

Cuestiones relacionadas