↑ BACK TO TOP
open sidebar menu
  • Analyzing Software Companies/Data Stores
    Knowledge Bases
    Analyzing Software CompaniesBuilding Software ProductsAI, it's not that complicatedWorking With Data Teams
    Sections
    1: Analytics and AI
    2: Communication and Automation
    3: Data Stores
    What does Elastic do?What Does Algolia do?What does MongoDB do?What's Kafka and what does Confluent do?Why do developers choose different types of databases?
    4: DevOps
    5: Fintech
    6: Infrastructure and Cloud
    7: Monitoring and Observability
    8: Security
Sign In

What does MongoDB do?

MongoDB is a highly popular unstructured, NoSQL document database for powering your applications.

databases

Last updated: July 4, 2025

The TL;DR

MongoDB is a highly popular document database (i.e. NoSQL) for powering your applications.

  • Every app (give or take a few) is powered by a production database
  • These days, you can choose between something structured (SQL) or unstructured (NoSQL)
  • Document databases use flexible schemas – you just throw data in, and worry about structure later
  • MongoDB provides an ecosystem around its document DB – managed services, an IDE, analytics, search, and even vector search (among other things).

MongoDB is one of the OGs of what I consider the modern tech ecosystem (IPOd back in 2017), and powers apps at over 57,000 customers. But they're not a stodgy shop. Their cloud product (Atlas) has been growing like a weed recently , and their website actually (gasp) explains what the product does. So let's dive in and see what they're all about.

Terms Mentioned

Open Source

JavaScript

SQL

Client

Production database

NoSQL

Schema

Server

Cloud

Production

Data lake

Terminal

Deploy

Database

Vector Database

Query

Relational database

Companies Mentioned

AWS logo

AWS

$AMZN
MongoDB logo

MongoDB

$MDB

A refresher – what’s NoSQL?

Although their marketing has moved away from the NoSQL moniker in recent years, the key to understanding MongoDB – and why they had such a major impact on the ecosystem – is to understand NoSQL.

🔮 Dependencies

If you haven’t yet, check out the Technically posts on relational databases and then NoSQL. This section will jog your memory, but to go in depth you’ll want to read these bad boys.

For most of technical history, apps were powered by relational databases. A relational database is all about structure – before you put any data into it, you plan out what your data is going to look like. What are my column names going to be? How will my tables relate to each other? What type of data will each column store? All of that information together is called a schema, and it’s the sine a qua non of relational data. You’ll usually hear relational databases referred to as SQL databases.

(By the way, SQL stands for Structured Query Language, and it’s a category of mini-programming languages that people use to get data in and out of these databases. Rigid structure means that querying data is easy and straightforward.)

NoSQL, on the other hand, is exactly what you think it is – unstructured. Instead of rigidly defining what your data looks like before storing it, you just kind of throw it in there and worry about it later. Querying it is more difficult, but it’s a lot easier to scale horizontally to multiple servers. Here’s a quick snapshot of how these storage patterns differ:

Loading image...

The thing about NoSQL is that those two people (Justin and Selin) don’t even need to have the same attributes. Justin can have a “favorite food” value, while Selin has a “hair color” one. In SQL, if one record has a column, all records in the table need to have that same column. You can imagine how that flexibility that NoSQL offers is convenient – but it also means that down the road, you have less predictability around what your data will look like Lately, more NoSQL databases have added the ability to create a schema – or add rigidity to your data – after the fact. More on this later. .

There are all different kinds of NoSQL databases – key value stores, wide column stores, etc. The most popular type, though, is called a document store, and it’s the core of how MongoDB works. The canonical “unit” – the main thing at play – is a document, which is just a collection of different keys and values. Here’s a document that represents my band:

{
    guitar_players: {
        justin_gage: {
            height: 5"3,
            weight: "wouldn't you like to know"
            },
        jake_mendel: {
            height: 5"11,
            weight: 170,
            axe: “mary kaye”
            }
        },
    drum_players: {
        chris_behrens: {
           height: 6"0,
           weight: 185,
           cymbal: “zildjian”
        }
    }
}

Each entry has a key (what does this data mean?) and a value (the actual data). For Jake, height is a key, and 5”11 is a value. At a higher level, guitar_players is a key, and the entire entries for both Justin and Jake are the values. Notice how there’s really no structure at all to this – values and keys can be anything, data types don’t need to match, etc. This is the double edged sword of NoSQL.

The basic MongoDB product

MongoDB originally started as a company called 10gen – and when they open sourced their document database in 2008, the idea of using a NoSQL database in production was still not quite widely accepted. It took until 2013 for them to rebrand to MongoDB, and by then, they had built out a proper product suite with cloud, backups, monitoring, and an enterprise offering. And that’s the MongoDB you’ve probably heard of today. We’ll start by running through the basic open source product, and then explore the broader suite and where MongoDB fits into the ecosystem.

Access the full post in a knowledge base

Upgrade to learn more about SQL vs. NoSQL, MongoDB’s <Term id="open-source">open source</Term> origins, and the rest of the MongoDB product suite.

Knowledge Base

Analyzing Software Companies

The products and business models of leading software companies.

$199/month

Knowledge Base

Working With Data Teams

How to make positive contributions when working with analytics and data science teams.

$149.00/one-time

What's a knowledge base? ↗

Where to next?

Keep learning the products and business models of leading software companies.

What's Kafka and what does Confluent do?

Apache Kafka is a framework for streaming real time data, and Confluent offers Kafka as a managed service.

Data Stores
Why do developers choose different types of databases?

An intro to how companies like Elastic, MongoDB, Snowflake, Confluent and AWS compete.

Data Stores
What does Hashicorp do?

Hashicorp sells software that helps developers manage their cloud infrastructure via code-based configuration.

DevOps
Support
Sponsorships
Twitter
Linkedin
Privacy + ToS