NoSQL is a type of database that stores and retrieves data without needing to define its structure first – an alternative to the more rigid relational databases. NoSQL are non tabular, and store data differently than relational tables. It should be noted that NoSQL databases can store relationship data—they just store it differently than relational databases do. That should clear the misconception that NoSQL databases or non-relational databases don’t store relationship data well. Source: MongoDB Site
Types of NoSQL Database
- Document Databases: They usually pair each key with a complex data structure also known as a document. Examples of NoSQL in this category are MongoDB, Apache CouchDB, Raven DB and others.
- Key-value stores: In this group, every item in it is stored as a Key-value pair. Examples include Apache Ignite,Redis, Riak, Memcached.
- Wide-column stores: These store columns of data together. The reason for this that they are optimized for queries over huge datasets. Examples include Cassandra, Hbase, Scylla.
- Graph stores: They include Neo4j, AllegroGraph.