Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>I recently attended the NoSQL conference in London and think I have a better idea now how to answer the original question. I also wrote a <a href="http://andrewwhitehouse.wordpress.com/2010/04/24/nosql-is-it-time-to-ditch-your-relational-database/" rel="noreferrer">blog post</a>, and there are a couple of other <a href="http://blogs.the451group.com/information_management/2010/04/21/user-perspectives-on-nosql/" rel="noreferrer">good</a> <a href="http://www.redmonk.com/jgovernor/2010/04/20/the-guardian-nosql-eu-dont-melt-the-database/" rel="noreferrer">ones</a>.</p> <p>Key points:</p> <ul> <li>We have accumulated probably 30 years knowledge of adminstering relational databases, so shouldn't replace them without careful consideration; non-relational data stores are less mature than relational ones, and so are inherently more risky to adopt</li> <li>There are different types of non-relational data store; some are key-value stores, some are document stores, some are graph databases</li> <li>You could use a hybrid approach, e.g. a combination of RDBMS and graph data store for a social software site</li> <li>Document data stores (e.g. CouchDB and MongoDB) are probably the closest to relational databases and provide a JSON data structure with all the fields presented hierarchically which avoids having to do table joins, and (some might argue) is an improvement on the traditional object-relational mapping that most applications currently use</li> <li>Non-relational databases support replication (including master-master); relational databases support replication too but it may not be as comprehensive as the non-relational option</li> <li>Very large sites such as Twitter, Digg and Facebook use Cassandra, which is built from the ground up to support clustering</li> <li>Relational databases are probably suitable for 90% of cases</li> </ul> <p>In summary, consensus seems to be "proceed with caution".</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload