Why NoSQL
Ramji Narasimhan:
The fundamental reasons behind [the move away from traditional SQL based solutions] are simple:
- Not all your applications need relationships between data to be explicitly stored along with the data
- Moving the responsibility of interpreting data relationships out of the store allows for storing the data anywhere. That means you can simply add boxes as your data grows
- Storing your data as a set of key-value pairs as opposed to hard wired tables allows for more flexibility in storage design
- Absence of a pre-defined schema/tables allows you to easily extend your data model
- Data operations, both read and write, tend to be simple and lightweight in the absence of SQL processing and explicit relationship constraints
Just one comment: relationships are almost always needed, but the way they are represented is changed:
- data is denormalized, so entities involved in relationships live in the same space
- relationships are created/restored at the application level
Original title and link: Why NoSQL (NoSQL databases © myNoSQL)
via: http://www.virtusa.com/blog/index.php/2011/04/facebook-like-scalability-with-nosql/