Courseiva

C100DEV MongoDB Overview and Document Model Practice Question

A developer is modeling a blog platform. Posts are read frequently, and each post has a small, bounded set of tags. The tags are always displayed with the post and are never queried independently across posts. The developer is deciding between embedding the tags as an array inside each post document versus storing them in a separate tags collection with references. Which design choice aligns with MongoDB document model guidance for this scenario?

⚠ Common exam trap

The trap here is applying relational normalization instincts and assuming a separate collection always improves performance, when in MongoDB the access pattern should drive the decision.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Embed the tags as an array within each post document, since they are bounded, accessed together with the post, and not queried independently.

MongoDB document modeling favors embedding when related data is bounded, is retrieved together with its parent, and is not queried on its own. The tags described fit all three conditions, so embedding them as an array in each post yields single-read retrieval and avoids join overhead. A separate collection would only be justified if tags needed independent querying or unbounded growth.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    Embed the tags as an array within each post document, since they are bounded, accessed together with the post, and not queried independently.

    Why this is correct

    Embedding is the recommended approach when the related data is bounded, is read together with the parent, and is not accessed on its own. An array of tags inside the post lets the application retrieve everything needed for rendering in a single read, avoiding a join. This matches the access pattern described and keeps the document model aligned with how the data is used.

  • ✗

    Store tags both embedded in posts and in a separate collection, keeping them synchronized manually, to satisfy both read and write paths.

    Why it's wrong here

    Duplicating tags in two places requires the application to keep both copies consistent, which adds write complexity and risks divergence. Since the scenario has no requirement for independent tag queries, the second copy provides no benefit. This violates the principle of modeling around actual access patterns rather than anticipating unused ones.

  • ✗

    Store tags in a separate collection and use a $lookup aggregation in every read, because aggregation pipelines are the only way to combine related data.

    Why it's wrong here

    $lookup is available for combining collections, but it is not the only mechanism and it introduces additional work per read. Using it for every post retrieval to fetch a small bounded tag list would add latency and complexity compared with embedding. The scenario does not require cross-post tag queries, so this approach does not match the access pattern.

  • ✗

    Store tags in a separate collection and reference them from posts, because normalization always reduces duplication and improves read performance.

    Why it's wrong here

    Normalizing tags into a separate collection would require an additional lookup or $lookup stage to assemble each post for display. Because tags are bounded, always shown with the post, and never queried across posts independently, the extra collection adds join cost without benefit. The claim that normalization always improves read performance is not true in MongoDB's document model.

About these practice questions

Courseiva writes every C100DEV question from scratch — 259 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official MongoDB exam blueprint

This C100DEV practice question is part of Courseiva's free MongoDB certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the C100DEV exam.