Support of reporting functionality, as mentioned, is not an optimal use case for Cassandra. This is because many reports are rooted in requests for things such as query all sales for 2017 or list all transactions for the last 5 years. Even a Cassandra Query Language (CQL) query as simple as SELECT COUNT(*) FROM my_table; is considered to be a Cassandra anti-pattern.
This violates a key design principle of Cassandra data modeling, in that queries should be served from a single node. Unbound queries (SELECT without a WHERE clause) or queries with liberal filters violate this principle, in that several or even every node will have to be checked for data that can satisfy the query. When this happens, a single node in the cluster is chosen as a coordinator, which does the work of reaching out to the other nodes and compiling the result set. It is not unheard of to have a Cassandra node crash due to a coordinator being required to do too much.