Type: New Feature
Fix Version/s: None
I understand that Cassandra is a dispersed lightweight, performance / scalability / reliability database. For this reason, it has limitations not to overload the single node.
But these restrictions for someone who administers the database or explains the problems are too big. They remind us of the attempt to use mono monitors in the era of color monitors.
At the beginning I worked on Cassandra 2.0. At that time it was not possible to use IN,>, <. Also, searching for several partitions was not possible.
Now in 3.11.4 it's all there is, but there are several necessary functionalities that are very missing.
At the moment, to make the functions available, you need to change the parameter in the configuration.
You could add below features and parameters to enable:
a) sorting on Cassandra's side (this could be done by the coordinator): .. order by xxx. Sorting mechanisms are available in Cassandra because data is sorted in partitions and there are indexes
CASSANDRA-8846 SubQuery and IN operator implementation
c) CTAS - CREATE TABLE AS SELECT - CASSANDRA-8234 and INSERT INTO .. SELECT ...
d) DBLINK to other databases (Oracle, MSsql)
e) functions in which the CQL query can be called and return a result
f) external table (file on disk visible as a table under database).
I know there is SPARK, but it's a programming solution, not for administrators or testers.
I am the administrator of Oracle and Cassandra.
I know SQL quite well and working with CQL is a torment.
The CQL editor is very good, but CQL restrictions make it difficult to solve any problem.
I can create all points a) -f) as independent request, but as I can see, all such ideas are rejected / postponed.
The point is, however, to change the approach. Today's huge Cassandra's restrictions reject many potential users.
Maybe you can combine Cassandara and Spark and give additional functionality to CQL, or do it only on Cassandra side.