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
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 couchbase.com)
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 couchbase.com)
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 couchbase.com)
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)
, NHibernate Membership Providers
4. NDatabase (.NET)
5. BrightstarDB (.NET)
1. Why NoSQL? - couchbase.com
2. NoSQL Databases Explained - mongodb.com
10 things you should know about NoSQL databases - techrepublic.com
4. What is NoSQL? - ravendb.net
5. NoSQL - Wikipedia