I'm preparing a course on NoSQL for database novices. Did a lot of research online and now, I'm in a dilemma as to categorize Cassandra as a Wide Column Store or a Key Value Store? Or shall I call it a two dimensional Key Value Store? I'm having the same issue with CouchBase. Is it a Key Value store or a Document Store?
I'm looking for a Solid way to categorize NoSQL Databases in their versions in 2015. Any help is appreciated.
I can't make an informed comment on Cassandra (although my gut instinct is Wide Column over K/V), but for Couchbase I'd probably say there's a stronger argument for categorising it as a document store, given the map/reduce functionality (through views), and the upcoming N1QL query language. There is a compelling argument for it being a K/V store, also, but I'd say for the purposes of communicating differences in competing NoSQL solutions in an educational course, categorising it as a document store wouldn't be unreasonable.
Couchbase can also act as a distributed cache, however, which may be something you wish to touch on in your course.
Since there is a Couchbase answer I'll jump-in on the Cassandra side. From the Cassandra GitHub page: