This episode explores the limitations of RDBMS in the big data era, the four NoSQL categories, the history of MongoDB's birth by 10gen, and why this document database deserves to be chosen — complete with comparisons with PostgreSQL, DynamoDB, and Firestore.

In episode 0 you set up your MongoDB environment neatly. Now it's time to understand why this database exists in the world, and why you should bother learning it. Many developers jump straight into writing queries without understanding the paradigm behind them — and end up using MongoDB like they would use MySQL, a classic mistake that leads to bad schemas and poor performance.
Episode 1 is the conceptual foundation. The roadmap: first we dissect the limitations of classic RDBMS that gave rise to the NoSQL movement, second we understand the four NoSQL categories and MongoDB's position within them, third we trace the history of MongoDB's birth, fourth we discuss the strong reasons to choose MongoDB, and finally we compare MongoDB with three other popular databases. By the end of the episode, you'll have a ready-to-use answer when someone asks "why MongoDB?"
For decades, RDBMS (Relational Database Management System) products like MySQL and PostgreSQL were the standard for data storage. The concept is beautiful: data is normalized into related tables with primary keys and foreign keys, then guaranteed consistent through ACID transactions. But in the modern web era, three pressures arose that made RDBMS feel heavy:
ALTER TABLE for every column change is painful bureaucracy.RDBMS answers the problem with vertical scaling: increasing the CPU, RAM, and storage of a single server. This approach is expensive and has physical limits. The modern world needs horizontal scaling: adding many ordinary servers and letting the software distribute data among them.
The term NoSQL emerged around the late 2000s as a movement challenging relational dogma. To be clear: NoSQL doesn't literally mean "no SQL" — many interpret it as "Not Only SQL". In essence, NoSQL offers a different trade-off: sacrificing some strict consistency and rigid structure in exchange for scalability, flexibility, and speed.
NoSQL isn't a single technology but an umbrella for four major families, each optimizing for something different:
| Category | Example | Primary strength | Data model |
|---|---|---|---|
| Document Store | MongoDB | Flexible schema, data locality | JSON/BSON documents |
| Key-Value | Redis | Extreme speed | Key-value pairs |
| Wide-Column | Cassandra | Massive write throughput | Columns within column families |
| Graph | Neo4j | Complex relationships | Nodes and edges |
MongoDB belongs to the Document Store category. Its documents store all related data in a single hierarchical structure — very much like how modern applications represent objects in memory. Look at the table above: each category wins in one domain. Key-Value wins at simple access speed, Wide-Column wins at mass writes, Graph wins at complex relationships, and Document wins at flexibility for semi-structured data.
MongoDB was born from a company called 10gen (now MongoDB Inc.), founded in 2007. Interestingly, 10gen wasn't originally a database company — they were building a platform-as-a-service (PaaS) cloud offering, similar to the early Heroku concept. While developing that product, they struggled to find a database capable of storing semi-structured data that scaled horizontally with ease. The databases that existed at the time felt rigid for their needs.
So they decided to build their own database. The name "Mongo" is inspired by the English word "humongous" — reflecting the ambition to handle very large datasets. MongoDB was first released as open source in 2009, and quickly caught developers' attention because of its ease of use: JSON-like documents that feel natural, with no need to define a schema upfront.
The key historical point to remember: MongoDB wasn't created by academics in a laboratory, but by engineers with real problems in the field. This explains why MongoDB is so practical and developer-oriented — great documentation, intuitive queries, and extensive programming language integrations. Along its journey, MongoDB kept adding enterprise-grade capabilities: ACID multi-document transactions (4.0), built-in replica sets, native sharding, and today it's known as one of the most popular databases in the world.
This is the biggest differentiator from RDBMS. In a single MongoDB collection, each document may have a different structure — one products document has a weight field, another has a color field. You don't need ALTER TABLE to add a new field. This flexibility is invaluable for data that is non-uniform or continuously evolving:
{
"_id": "product-001",
"name": "Kemeja Flanel",
"category": "fashion",
"size": ["S", "M", "L"]
}{
"_id": "product-002",
"name": "Monitor 27 inch",
"category": "elektronik",
"specs": {
"panel": "IPS",
"refreshRate": "144Hz"
}
}Both documents coexist in the products collection without any issue. For fashion products, the size field is relevant; for electronics, the specs field carries more meaning. That's the power of a flexible schema.
MongoDB stores data in the BSON (Binary JSON) format — a binary representation of JSON that supports richer data types than pure JSON: Date, Decimal128 for monetary precision, Binary for files, ObjectId, and even UUID. We'll dissect BSON in detail in episode 2.
MongoDB was designed to be split across many servers from the start. Replica Sets for high availability (episode 15) and Sharding to distribute datasets across servers (episode 16) are built-in features, not add-ons. This is why MongoDB is the top choice for applications that must grow without massive migrations.
With data stored close together in a single document, MongoDB can fetch complete data in one query without JOINs. For read-heavy workloads with semi-structured data, it outperforms RDBMS products that have to combine many tables.
To make your decision data-driven, here's a comparison of the four most commonly used databases:
| Aspect | MongoDB | PostgreSQL | DynamoDB | Firestore |
|---|---|---|---|---|
| Type | Document store | RDBMS | Key-value / document | Document |
| Schema | Flexible | Rigid (migration) | Flexible | Flexible |
| Hosting | Self-host / Atlas | Self-host / cloud | Serverless AWS | Serverless GCP |
| Query | Rich query language | Full SQL + JSONB | Limited to key & index | Limited |
| Transaction | Multi-doc ACID | Full ACID | Multi-item ACID | Certain constraints |
| Scaling | Horizontal (native) | Vertical primarily | Horizontal (auto) | Horizontal (auto) |
| Best for | Dynamic semi-structured data | Complex relationships & strict transactions | Key-based lookup at huge scale | Mobile / realtime Google ecosystem |
Info
A practical rule for choosing a database: if your application needs complex relationships and very strict transactional consistency (e.g. an accounting system), PostgreSQL wins. If you need simple lookups at massive scale without complexity, DynamoDB is worth it. If you're already tied into the Google ecosystem and need realtime, Firestore makes sense. But if your data is semi-structured, changes quickly, and needs flexibility plus rich queries, MongoDB is the best choice.
In episode 1 you understood the background of NoSQL's birth as an answer to RDBMS limitations in the big data era — massive volume, high write throughput, and rapidly changing schemas. You also recognized the four NoSQL categories and MongoDB's position as a document store, traced MongoDB's history from 10gen in 2007 to its open-source release in 2009, understood the advantages of a flexible schema, the BSON format, native horizontal scaling, and compared MongoDB with PostgreSQL, DynamoDB, and Firestore.
Key takeaways:
In the next episode, episode 2, we go to the heart of MongoDB: core concepts and data structure. You'll understand the Database > Collection > Document > Field hierarchy, dissect the BSON format and the rich data types within it, and dig into the _id and the unique 12-byte ObjectId of every document. See you in episode 2, and get ready to write your first data structures!