mongodb
Installation
SKILL.md
MongoDB
Overview
MongoDB is a document database that stores JSON-like (BSON) documents with flexible schemas, nested objects, and arrays. It provides a rich query language, aggregation pipelines for data transformation, multiple index types (text, TTL, wildcard, geospatial), ACID transactions, and horizontal scaling via sharding. MongoDB Atlas adds managed cloud hosting with full-text search and vector search.
Instructions
- When designing schemas, embed data that is read together and reference data that is shared across documents, optimizing for read patterns rather than normalization since MongoDB penalizes joins (
$lookup). - When querying, use dot notation for nested fields, array operators (
$in,$elemMatch,$all) for array queries, and projection to return only needed fields. - When transforming data, use aggregation pipelines with stages like
$match,$group,$project,$lookup, and$unwindrather than pulling data to application code for processing. - When creating indexes, add indexes for every production query pattern, use
explain("executionStats")to verify usage, and choose TTL indexes for auto-expiring data like sessions and logs. - When enforcing data integrity, use JSON Schema validation on collections, set
writeConcern: "majority"for critical writes, and use multi-document transactions only when atomicity across documents is required. - When scaling, choose shard keys with high cardinality and even distribution, set up replica sets for high availability, and configure read preferences based on consistency requirements.
Examples
Example 1: Build an e-commerce product catalog
Related skills