Guess this Era is significant in terms of number of databases made their way into the enterprise data centers,
1. Column Based
Column Based Database are not different from RDBMS on a structural point of view, but they do allow columns to be created on the fly unlike RDBMS (it’s bit relaxed). if you define a table with 2 columns & store a record with 3 columns you will see three columns inserted even though the 3rd column wasn’t defined.
Solutions: Cassandra, etc.
* Partially schemaless.
* No ACID properties.
* supports CQL (close to SQL syntax)
2. Graph or Hierarchy Based
Graph database stores data in the form of Vertex & edges, vertices are connected by edge. In a typical world where you want to define relational data, Graph database would fit in well.
Ex: Company -> employee -> family -> etc.
* Works with multiple storage option, Titan works well with Cassandra.
* Very effective in navigate from one node to other, you can visualize like navigating from friends to friends in a social media.
Solutions: TitanDB, Neo4J, etc.
3. Document Based
The data is stored like a document, most of them support JSON format. It’s easy to serialize & de-serialize when you store it as a document.
Solutions: MongoDB, CouchDB etc.
5. KeyValue Store
This category is a filler for everything else that talks about being NOSQL.
Solutions: Redis, MemcacheDB etc.
4. RDBMS++ & --
This is a new trend, I could say a marketing trend where people claim they provide goods of both worlds of RDBMS & NoSQL. Ex: ACID property, Security & so on.
Solutions: NeoDB, etc.
More the choices more the complication in choosing the right fit.
I am no exception :) , Good luck with it.
Checkout In Dzone
Post a Comment