What's NoSQL?

NoSQL is databases with no rules and no required structure.

The TL;DR

NoSQL

databases are databases with no rules: you just throw your data in there and worry about it later.

  • NoSQL is a class of databases built for large amounts of data and fast application speeds

  • Unlike relational databases, NoSQL works without a schema, or set of rules and definitions

  • Most NoSQL databases are built to be resilient and distributed as opposed to transactionally sound

NoSQL has really taken off over the past few years, and almost 30% of developers are using it in one way or another.

Companies Mentioned

🔮 Dependencies

To get the most out of this post, you’ll need to understand what a relational database is and how software runs in the cloud .

What’s NoSQL?

When we covered relational databases, everything was about schemas: you set all the rules that your data needs to follow up front, and that yields a lot of important benefits for inserting and querying data down the road. Schemas are great, but like any rules, they can get really annoying sometimes:

  • You need to define a ton of stuff up front, which is a lot of work

  • Data and applications change all the time, so you need to update your schema constantly (which is really hard)

It’s the same tradeoff as throwing all of your stuff into a suitcase vs. packing it meticulously; if you’re rushed, or if you’ve got plenty of room, you might want to skip the folding and organizing. That’s exactly what NoSQL is (literally, you don’t use SQL to query it) – it’s a database without all of the rules. You can insert data through a much more flexible and simple process, and read it out more directly.

relational vs nosql

There’s a reason that NoSQL hasn’t gotten particularly popular until recently: it’s gotten so cheap to store and access data that we don’t need to be super stingy anymore. Overall, running your database without a schema and normalization is going to use much more space and be less efficient, but that doesn’t always matter anymore. If it saves developer time, it might be worth it. That, and NoSQL databases are much easier to scale.   

🖇 Workplace Example

Today, a lot of companies with serious applications running use a combination of relational and NoSQL databases: more than 25% of developers use MongoDB alone. Ask your developers which types of databases they’re using and why they chose them.

Types of NoSQL DBs

Ok, so you’ve packed your stuff completely haphazardly, but you did it fast. Now how do you get your jacket out of there? Even though NoSQL is technically schema -less, there needs to be some structure around how you insert and ...