| name | mongodb |
| description | MongoDB document database with aggregation pipeline and Atlas. Use for document storage. |
MongoDB
MongoDB is a document database. It stores data in JSON-like documents (BSON). It is the most popular NoSQL database, known for flexibility and scalability.
When to Use
- Rapid Prototyping: Schema-less design allows iterating fast without migrations.
- Content Management: Storing diverse assets with varying metadata.
- Catalogs: Product catalogs where each product has different attributes (size, color, wattage).
Quick Start
const kittySchema = new mongoose.Schema({
name: String,
});
const Kitten = mongoose.model("Kitten", kittySchema);
const silence = new Kitten({ name: "Silence" });
await silence.save();
Core Concepts
Documents (BSON)
Data is stored in "documents" (JSON objects) inside "collections" (Tables).
{ "_id": 1, "name": "Apple", "price": 10 }
Embedded Data vs References
- Embed: Store related data inside the document for fast reads. (e.g., Comments inside a Post).