What is NoSQL?

NoSQL, "not only SQL" means that  databases are not based on the classical architecture of relational databases. Originally developed to manage big data, the NoSQL database use has exploded in recent years.
But what really NoSQL?


       

Types of NoSQL

When speaking of NoSQL, we are including database systems that are not relational, but be aware that there are several types of databases "NoSQL".

The key / value based, used to store information in the form of a key / value pair where the value can be a string, integer, or a serialized object. A Redis database. This type of database offers very good performance by its simplicity and can even be used to store user sessions or the cache of your website for example.

Oriented databases columns, similar to relational databases because the data is saved as a line with columns, but is distinguished by the fact that the number of columns may vary from line to line. The best known solutions are HBase or Cassandra.

Oriented databases document represents the information into XML or JSON object. The advantage is to simply retrieve information structured hierarchically. The best known solutions are CouchDB, MongoDB and RavenDB.

Oriented databases graph, present the data in a node and relationships. This structure allows to simply recover complex relationships. A graph basic example is Neo4j.


Performances


We read often enough that non-relational databases are more "efficient" and "scalable".

The problem of relational databases is that they are difficult to distribute across multiple servers often forced to make "vertical scaling." It increases the power of the server hosting the database to obtain better performance and better reflect the charge. NoSQL databases support "horizontal scaling", a database can be distributed on a "pool" servers allowing to share performance. The advantage of this method is that it allows to adapt the architecture according to the load by distributing more or fewer servers as appropriate.









Comments

Post a Comment

Popular posts from this blog

Twitter API with PHP

Realtime Chat Application with CakePHP and Socket.IO #1

Let's build a mobile application with Ionic Framework #3