Course Objective & Scope
Treating MongoDB like a relational database — splitting every entity into its own collection and chaining $lookup stages — throws away the performance benefits of a document store. Conversely, embedding unbounded arrays inside a single document leads to write amplification and 16 MB BSON limit errors. This course teaches how to model schemas around application access patterns and write fast queries.
It covers BSON types, embedding vs referencing trade-offs, MongoDB schema design patterns (Subset, Bucket, Computed, Polymorphic, Outlier), multi-stage Aggregation Pipelines, index design with the ESR (Equality, Sort, Range) rule and explain() analysis, multi-document ACID transactions, Change Streams, Replica Sets (Write/Read Concerns), and Sharding/Shard Key selection.
Who Should Attend?
- Backend and full-stack developers building applications on MongoDB or MongoDB Atlas
- Data and software architects modelling catalogues, content, user profiles, IoT or event data
- DBAs and DevOps engineers responsible for MongoDB performance and scaling
- Prerequisite: basic database familiarity and working knowledge of JSON
Key Takeaways
- Balance embedding and referencing based on cardinality, document growth and read/write ratios
- Build expressive analytical pipelines with
$match,$group,$lookup,$facetand$setWindowFields - Design compound, multikey and partial indexes following the ESR (Equality, Sort, Range) rule
- Configure Read Concerns, Write Concerns and multi-document ACID transactions for consistency requirements
- Manage Replica Set elections and choose a high-cardinality Shard Key that avoids hot shards
Curriculum
MongoDB Architecture, BSON and Atomic CRUD Operations
- The WiredTiger storage engine, cache sizing, compression and BSON types (ObjectId, Decimal128, Date)
- Expressive query operators, array modifiers (
$push,$addToSet,$pull, arrayFilters) and atomicfindOneAndUpdate - Enforcing collection-level structural rules with JSON Schema Validation
Document Data Modelling Patterns
- Moving from relational normalisation to workload-driven design: Embedding vs Referencing
- Modelling 1-to-N and N-to-M relationships and avoiding the unbounded-array anti-pattern
- Applying the Polymorphic, Attribute, Bucket, Outlier, Computed and Extended Reference patterns
Data Processing and Analytics with the Aggregation Framework
- Core stages:
$match,$project,$unwind,$group,$sort,$limitand pipeline pushdown rules - Joining collections with
$lookup, multi-faceted search with$facetand window analytics with$setWindowFields - Maintaining pre-aggregated summary collections with
$mergeand$out
Indexing Strategies, the ESR Rule and Query Performance
- Single-field, Compound, Multikey (array), Wildcard, TTL and Partial indexes
- Ordering compound index fields with the ESR (Equality, Sort, Range) rule and Covered Queries
- Reading
explain('executionStats')output: COLLSCAN vs IXSCAN andtotalKeysExaminedvsnReturned
ACID Transactions, Change Streams, Replica Sets and Sharding
- Multi-document ACID transactions, Write Concerns (
w: majority), Read Concerns and Read Preferences - Building event-driven integrations with real-time Change Streams
- Replica Set elections/oplog sizing, Sharded Cluster architecture and choosing an effective Shard Key
Other Courses in This Category
-
In-Memory Data Structures, Caching and Messaging with Redis
Redis data structures (Strings, Hashes, Lists, Sets, Sorted Sets, Streams, HyperLogLog), caching patterns (cache-aside, stampede protection), distributed locks, rate limiting, Lua/pipelining, RDB/AOF persistence and Redis Cluster.
- Live Course
- 5 modules
-
Distributed NoSQL Databases with Apache Cassandra
Masterless ring architecture, consistent hashing, tunable consistency (LOCAL_QUORUM), LSM-Tree/SSTable storage internals, query-driven CQL data modelling and cluster operations — for high-write distributed systems.
- Live Course
- 5 modules
-
Search and Real-Time Analytics with Elasticsearch and OpenSearch
Inverted index and Lucene internals, text analysis (tokenizers/filters), mapping design, Query DSL and BM25 relevance tuning, Aggregations, hybrid/vector search and cluster lifecycle management (ILM/ISM).
- Live Course
- 5 modules
-
Graph Databases, Data Modelling and Cypher with Neo4j
Labeled Property Graph modelling, the Cypher query language and variable-length path traversals, index-free adjacency, PROFILE/EXPLAIN tuning, Graph Data Science (PageRank, Louvain) and Knowledge Graph/GraphRAG patterns.
- Live Course
- 5 modules
-
Time-Series Databases with TimescaleDB and InfluxDB
Time-series data modelling, managing high cardinality, TimescaleDB (hypertables, continuous aggregates, compression) and InfluxDB/VictoriaMetrics, downsampling and automated retention policies.
- Live Course
- 5 modules
-
Vector Databases, ANN Indexing and Hybrid Search Architecture
Dense and sparse embeddings, distance metrics, ANN index algorithms (HNSW, IVF, DiskANN), vector quantization (PQ, Scalar, Binary), metadata filtering, hybrid search and recall/latency benchmarking.
- Live Course
- 5 modules
Get in touch