My project environment: SpringWS, Hibernate, Oracle and jBoss. I got a POC work to persist data into cassandra in case of my RDBMS (oracle) is down. So Cassandra will act as failover/backup for Oracle. I am new to cassandra and planning to use datastax to persist data in cassandra and want to know to the challenges. (Since its POC my cassandra (2.0.3) is running in single node)
Challenges I know (may be I am wrong)
- Like RDBMS, I cannot define incremental key definition in cassandra and PK should be handled by application (using TimeUUID)
- Cassandra will not support Many-To-Many. So in this case, like RDBMS hibernate, I cannot set multiple Person Entities in to Department Entity and persist in to cassandra. Instead there will be two insert call to cassandra. one to persist DEPARTMENT and another for PERSON table.
- Joins are not possible in cassandra. Cannot get PERSON and DEPARTMENT information in one CQL (v3).
Can you please point out other challenges also?
This post may help:
Switching from MySQL to Cassandra - Pros/Cons?
and for some data modeling tips...
What's The Best Practice In Designing A Cassandra Data Model?
Thanks, Sven