Actually, none of these databases is used for analysis on its own. Each time you choose a NoSql solution to solve a problem, you need to think about how to manipulate the data.
Cassandra is ideal for recording huge amounts of data with predictable performance and is easy to scale in multi-data center environments. On the other hand, read performance depends on the coefficient of consistency.
MongoDB is ideal for structured data, which in your case is not an advantage. MongoDB ensures that their data is consistent, but this fact can cause performance degradation. Moreover, MongoDB is not suitable for environments with many data centers.
As for access to data, they are also completely different. Cassandra provides CQL (akka SQL) which does not support Join, group, etc. Unlike Cassandra CQL, MongoDB uses JavaScript, Json, which uses its own map / reduce implementation for union operations.
To summarize, I think you should consider all these facts when choosing one of these databases. From my point of view, Cassandra is well suited to your task, but you should think carefully about the model and what queries will be used before working with Cassandra
PS I recommend considering SQL engines as an Apache drill for MongoDb and PrestoDB for Cassandra for analysis purposes
Oleksandr petrenko
source share