// Tutorial //

What is NoSQL?

Published on December 14, 2020 · Updated on December 14, 2020
Default avatar
By Mark Drake
Manager, Developer Education
What is NoSQL?

NoSQL is a term generally used to describe any database management system that uses a non-relational data model. The following table lists several NoSQL data models and highlights a few of the popular open-source databases that implement them, but please note that this is not a comprehensive list:

Operational Database Model Example DBMSs
Key-value store Redis, MemcacheDB
Columnar database Cassandra, Apache HBase
Document store MongoDB, Couchbase, Elasticsearch
Graph database OrientDB, Neo4j

These different data models can allow for far greater flexibility than the rigid structure imposed by relational databases. Because of their flexibility, NoSQL databases have a reputation for being a better choice for storing semi-structured and unstructured data, as opposed to the normalized, structured data required by relational databases. Since NoSQL databases don’t come with a predefined schema, it’s typically up to developers or database administrators to define how the data should be organized and accessed in whatever way makes the most sense for their application.

For more educational resources related to NoSQL, please visit:

A complete list of our educational resources on NoSQL can be found on our NoSQL tag page.

If you’ve enjoyed this tutorial and our broader community, consider checking out our DigitalOcean products which can also help you achieve your development goals.

Learn more here


About the authors
Default avatar
Manager, Developer Education

Technical Writer @ DigitalOcean

Still looking for an answer?

Was this helpful?
Leave a comment

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!