No hay nada como Silver bullet, todo está construido para resolver un problema específico y tiene sus propios pros y contras. Depende de usted, qué enunciado de problema tiene y cuál es la mejor opción para la solución de ese problema. Ya sea que utilice Cassandra (NoSQL) o MySQL (RDBMS), todo se basa en los requisitos de su sistema. A continuación se encuentran las entradas que lo ayudarán a tomar una mejor decisión al decidir sobre la base de datos.
por qué utilizar NoSQL
En el caso de la base de datos RDBMS, por lo que la elección es bastante fácil, porque casi todas las bases de datos como MySQL, Oracle, MS SQL, PostgreSQLin esta categoría ofrece casi el mismo tipo de soluciones orientadas a Propiedad ACID. Cuando se trata de NoSQL, la decisión se vuelve difícil porque cada base de datos NoSQL ofrece una solución diferente y debe entender cuál es la más adecuada para su aplicación/requerimiento del sistema. Por ejemplo, MongoDB es apto para cajas de uso donde su sistema requiere una tienda de documentos sin esquema. HBase podría ser adecuado para los motores de búsqueda, análisis de datos de registro, cualquier lugar donde escanear enormes tablas bidimensionales sin unión son un requisito.Redis está diseñado para proporcionar la búsqueda en memoria de diversas estructuras de datos como árbol, cola, lista de enlaces, etc. y puede ser una buena opción para crear tablas de clasificación en tiempo real, tipo sub-pub. Del mismo modo, hay otra base de datos en esta categoría (incluyendo Cassandra) que se ajustan a una declaración de problema diferente. Ahora pasemos a la pregunta original y respondamos una a una.
Cuándo utilizar Cassandra
Ser parte de la familia NoSQL Cassandra ofrece una solución para el problema donde el requisito es tener el sistema de escritura muy pesado y que desea tener sistema de información muy sensible en la parte superior de los datos almacenados . Considere el caso de uso de análisis web donde los datos de registro se almacenan para cada solicitud y desea construir una plataforma analítica para contar los aciertos por hora, por navegador, por IP, etc. en tiempo real. Se puede hacer referencia al blog post (http://blogs.shephertz.com/2015/04/22/why-cassandra-excellent-choice-for-realtime-analytics-workload/) a entender más acerca de los casos de uso donde Cassandra cabe en.
Cuándo utilizar un RDBMS en lugar de Cassandra/NoSQL
Cassandra se basa en la base de datos NoSQL y no proporcionar ACID y propiedad de datos relacionales. Si tiene un fuerte requerimiento de propiedad de ACID (por ejemplo, datos financieros), Cassandra no encajaría en ese caso. Obviamente, puede hacer que funcione, sin embargo, terminará escribiendo gran cantidad de código de aplicación para manejar las propiedades de ACID y perderá tiempo para comercializar mal. También administrar ese tipo de sistema con Cassandra sería complejo y tedioso para ti.
Me parece que este enlace es más útil para decidir sobre la decisión SQL/NoSQL para el caso de uso comercial: http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis –
esta pregunta debe cerrarse, no encaja TAN. –