Problem Statement
What are the key differences between MongoDB and relational databases?
Explanation
There are five main differences. First, data model: MongoDB is document-oriented and stores data in flexible JSON-like documents, while relational databases use tables with rows and columns.
Second, schema: MongoDB is schema-less, allowing documents in the same collection to have different structures, while SQL databases require a predefined schema.
Third, relationships: MongoDB uses embedding or referencing without joins, while SQL uses foreign keys and join operations.
Fourth, scalability: MongoDB scales horizontally through sharding by adding more servers, while SQL databases typically scale vertically by upgrading hardware.
Fifth, querying: MongoDB uses a rich query language for documents and supports nested structures, while SQL uses structured query language across tables.
Code Solution
SolutionRead Only
// MongoDB - Embedded relationship
{
_id: 1,
name: "John",
address: {
city: "New York",
zip: "10001"
}
}
// SQL - Separate tables with JOIN
SELECT users.name, address.city
FROM users
JOIN address ON users.id = address.user_id