Tuesday 11 June 2013

When to use noSQL Database

Data is stored as key-value pairs, which are written to particular storage node(s), based on the hashed value of the primary key.

provide highly reliable, scalable and available,distributed storage

When to use noSQL Database
  1. where there are High read/writes
  2. Massive Data: For example, Google and Amazon have terabytes of data stored in big data centers. Querying and inserting is not performant in these scenarios because of the blocking/schema/transaction nature of the RDBMs. That's the reason they have implemented their own databases (actually, key-value stores) for massive performance gain and scalability.
  3. So much join for searching : your data makes no sense in SQL, you find yourself doing multiple JOIN queries for accessing some piece of information.
  4. you are breaking the relational model, you have CLOBs that store denormalized data and you generate external indexes to search that data.
  5. With some advanced planning, software updates and hardware upgrades can be performed while the database is still running hot. Try doing that with a relational database without taking it down, and you're in for a world of trouble.
  6. Scaling : NoSQL databases like Couchbase and 10Gen's MongoDB, he said, can be scaled up to handle much bigger data volumes with relative ease

When Not to Use NoSql  Database
  1. If too much redudant huge volume data and needs fast search—go to Hadoop
  2. less relational data and scaling of data not needed : may be less than 1TB

No comments:

Post a Comment