Which NoSQL Database should I use ?

NoSQL Database
Written by Charaf JRA

Before picking the right NoSQL Database to use, it is imperative that you select one that will fit your business requirements. You have to consider many points before making the choice as these databases vary in the way they store and retrieve data which makes each type more or less efficient depending on your needs.

Below a small comparison of all the categories of non-relational databases.

The 4 Categories of NoSQL Database:

1.Key-Values Stores

keyvalue database NoSQLThe main idea behind Key-Value Storage is the use of associative arrays as an essential data model, where there is a unique key and a pointer to a particular item of data. The Key/value model is the simplest and easiest to implement, with one of its downsides being inefficiency when it comes to querying or updating part of a value, among other disadvantages. Examples of Key-Value Stores include Tokyo Cabinet, Tyrant, Redis, Voldemort, Oracle BDB, Amazon Simple DB etc…

2.Column Family Storescolumn_store_nosql

These were created to store and process very large amounts of data distributed over many machines. There are still keys but they point to multiple columns. The columns are arranged by column family. Examples include Cassandra, Accumulo, HBase and Vertica

3.Document Databasesnosql_document stores mongodb couchdb

The document database model is basically the notion of documents that are collections of other key-value collections. The semi-structured documents are stored in formats like JSON. Document databases are essentially the next level of Key/value, allowing nested values associated with each key.  Document databases support querying more efficiently. Examples of Document Databases include CouchDB and MongoDB

4.Graph Databasesgraph db NOSQL

Instead of tables of rows and columns and the rigid structure of SQL, a flexible graph model is used which, again, can scale across multiple machines. NoSQL databases do not provide a high-level declarative query language like SQL to avoid overtime in processing. Rather, querying these databases is data-model specific. Many of the NoSQL platforms allow for RESTful interfaces to the data, while other offer query APIs. Examples include Neo4J and Infinite Graph.

About the author

Charaf JRA

I'm a Code enthusiast , Blogger, Geek and Software Engineer. I created this blog to share my inspirations and my new experiences.If you like to contact me , use the contact form above or follow me on twitter

%d bloggers like this: