This project has moved and is read-only. For the latest updates, please go here.

NoSQL - Second Generation Database

NoSQL is a new type and new concept of database management system.

According to what I know currently, below are some of the main differences (of course there are more points of view) between SQL and NoSQL type database.

SQL type database is also called Structured Data or RDBMS and
NoSQL is called Unstructure Data or Document Database.

Example of SQL Database - MySQL, PostgreSQL, SQLite
Example of NoSQL Database - RavenDB, MongoDB, NDatabase

Concept Started Year
SQL- Started at 1970s.
NoSQL - Started at 2000s.

Figure 1: Numbers of Data handled by SQL and NoSQL Type Database (retrieved from

The Ability of Handling Large Data
SQL type database will face performance problem when the database becomes large in size.
NoSQL can consistently handle tremendous size of data.

Figure 2: Cost and Performance of SQL and NoSQL Database (retrieved from

Data Relation Mapping
SQL type - Require data type mapping into .NET, data relationship need to bind manually.
NoSQL type - No data relationship mapping and binding needed. Whole object is stored directly.

Figure 3: Data Structure of SQL and NoSQL Database (retrieved from

SQL - Structure and data types are fixed in advance. To store information about a new data item, the entire database must be altered, during which time the database must be taken offline.
NoSQL - Typically dynamic. Records can add new information on the fly.

Suggested NoSQL Database For .NET
If you are still using SQL type Database for years, you can try to move to the Next Generation of Database - NoSQL. You may want to try to following:
1. RavenDB (.NET)
2. MongoDB
3. NHibernate, Examples, NHibernate Membership Providers
4. NDatabase (.NET)
5. BrightstarDB (.NET)

Read More:
1. Why NoSQL? -
2. NoSQL Databases Explained -
3. 10 things you should know about NoSQL databases -
4. What is NoSQL? -
5. NoSQL - Wikipedia

Last edited Jan 3, 2014 at 9:15 AM by adriancs, version 10