Dec 13, 2011

What are the advantages (or disadvantages) of NoSQL over SQL?

It seems that NoSQL is a pretty broad term, and there are now dozens of companies that offer NoSQL databases. SQL has been around longer, but has it been superseded/replaced by NoSQL, or are the two really aimed towards different users?




Please check this http://viratgaywala.blogspot.in/2014/05/difference-between-sql-and-nosql...


I am sure this will help you.


I like Mark Madsen's slightly cynical remark about "the history of databases in no-tation". I think that NoSQL responds to a problem that most people thought was scalability, but few people realised was really a deeper understanding of what SQL / RDBMS really are. Many people run into performance problems very quickly with MySQL. Because they don't recognise it as such (and instead, think that they're dealing with a scalability problem), they switch database architectures completely, giving up on ACID, ad-hoc denormalisation (JOINs), data structures and many other features they will eventually find missing in their NoSQL store.


So in essence, I believe that up to date, NoSQL stores may respond to niche problems (such as graph databases), but are in general a solution to a problem few people really have.


NoSQL is much easier to work with for software development, in great part due to the lack of need to custom code an ORM or data layer thanks to direct translation between NoSQL and programming objects.  NoSQL is usually faster, and easier to scale than SQL.


On the other hand, SQL works better for large projects, and is good at joining multiple tables together, and probably has more people that are familiar with SQL basics, at least to the level that allows basic use.  In the end, it really depends on the use whether SQL or NoSQL is superior. 

Hi Delia,

Here's some background on NoSQL:


And here are some articles that look at the pros and cons of NoSQL versus SQL:


SQL vs NoSQL in the Cloud: Which Database Should You Choose?

NoSQL or SQL? Do you have to choose?
Answer this