Developers need solutions that align with the realities of modern data and iterative software development practices. NoSQL databases have emerged in recent years as an answer to the limitations of traditional relational databases and to provide the performance, scalability and flexibility required of modern applications.
Most aspects of these NoSQL technologies vary greatly and have little in common except for the fact that they do not use a relational data model. There are four types of NoSQL database management systems:
- ** Key-value stores ** are the simplest NoSQL databases. Every single item in a key value database is stored as an attribute name (or "key") together with its value. Examples include Riak, Voldemort, and Redis.
- ** Wide-column stores ** store columns of data together instead of rows and are optimized for queries over large datasets. Cassandra and HBase are wide-column databases.
- ** Document databases ** pair each key with a complex data structure known as a document. Documents can contain many different key-value pairs, or key-array pairs, or even nested documents. MongoDB is a document database.
- ** Graph databases ** are used to store information about networks, such as social connections. Examples include Neo4J and HyperGraphDB. NoSQL databases are rising in popularity as companies apply them to a growing number of use cases.
To learn more about why MongoDB is the most widely-used NoSQL database, read our free white paper, “Top 5 Considerations.”