I’m dating Cassandra, but cheating with OrientDB

Whenever I’m about to start a new project, I dress up all nice-like (silver blazer and all) and go to that upscale lounge where all the NoSQL databases congregate to see if someone new catches my eye.
See, I’m currently dating Cassandra, a nice NoSQL DB by all means. I love how beautifully well she scales and the fact that she was the first-ever NoSQL DB to ever let me use SQL style (i.e. CQL) on her. It’s just that lately I’ve been feeling a bit dissatisfied…
It’s not her. It’s me.
Despite her unique benefits, I found myself craving some of that fun relational stuff I used to enjoy back in the day when dating those high-maintenance RDBMs. Being able to link to independent data within my data (commonly known as “joins”) without Cassandra always staring at me with her judgemental eyes. Almost like she’s saying “you’re doing it wrong!”.
Deep down, past the CQL and materialized View benefits, she’s just like any other NoSQL DB. I needed deep relations with my data, but I also knew i had outgrown RDBMs. Cassandra tried it’s best, but she could not fully become what I needed her to be without resorting to wearing make-up and body mods everyday such as Spark and/or Titan. To make matters worse, the fashion company in charge of making that Titan bodyshaper just killed that line!
These things were not her. They were add-ons. It became clear to me that I wasn’t in-love with Cassandra. I was only in love with my perception of her. What she looked like when wearing the latest mod….but I hated seeing her naked.
We are still seeing each other, but I know this won’t be the case for long….at least for my personal projects.
As they say, no relationship is wasted. You simply get closer to knowing what you want…and I believe I’ve found exactly what I want.
It all began one evening before I started building my latest project.
I was at the Google Chrome NoSQL lounge. All the usual faces were there, including MongoDB. Nothing special. (MongoDB probably hates me now because I totally snubbed her on multiple occasions but that’s a story for another day)
As I was about to call it an early night due to there being “nothing new”, I caught a glimpse of a beautiful NoSQL DB. I had never seen her before. Quick! I called up my boy Udemy (that guy that somehow knows everyone) and asked for the lowdown on that fine looking DB, and that’s exactly what he gave me. Information on the target only keeps your game tight before swooping in to say hello. You need to know what she likes to drink for example...and if she gives good SQL.
Needless to say, with game tightened and swagger on flick, I approached her and we started talking.
Before that night was done, I was able to determine that her name was OrientDB and she had everything I wanted in a NoSQL Database:
- She was a natural beauty, able to inter-connect data objects independently without wearing any make-up/add-ons.
- She’d allow me to work with SQL (much more expressively than Cass’s version)
- Highly performant just like Cass
- Scales pretty well similar to Cass
- Made the concept of graph DBs sexy again by merging all the neat stuff present in graph / document database. Vertexes, links (i.e edges), documents-in-vertexes, documents-in-links…she was a bad ass.
She was basically a hybrid between a “typical” NoSQL DB and the RDBMs of old…without any of the restrictive RDBM drama and with a modern dress sense. A perfect combination that worked for me.
We’ve been seeing each other ever since unknown to Cassandra…though I think Cass is beginning to suspect something. I’ll have to break the news to Cass soon as I can’t keep doing this. I suck at lying….
Hopefully I can get OrientDB to silently take over some of the stuff Cassandra has been doing for me before I break it off with Cass. Hope she doesn’t smash my data in anger though.
I’ll be sure to tell you guys how it went down.
PS: Am I a bad person???

Originally published at yobeki.com on February 9, 2016.