C100DEV Data Modeling Practice Question
A social platform stores user profiles in a 'users' collection and their posts in a 'posts' collection. Each post document embeds a small 'author' subdocument with 'userId', 'displayName', and 'avatarUrl'. A user changes their display name. The application must keep existing posts showing the new name. What is the most accurate statement about this Extended Reference design?
⚠ Common exam trap
The trap here is believing that MongoDB maintains referential integrity between a source document and duplicated fields in other collections.
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
✓
The change requires an update to the user document plus a multi-document update to every post embedding that author's duplicated fields.
Extended Reference embeds a small set of frequently accessed fields to avoid extra reads, accepting duplication as the cost. Because MongoDB does not synchronize fields across collections, any change to a duplicated field must be written to the source document and to every embedding document. The design is valid and useful, but the application owns consistency.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
The design is invalid because embedding an author subdocument violates the rule that referenced data must never be duplicated.
Why it's wrong here
MongoDB does not forbid duplication; it is a deliberate modeling choice. The Extended Reference pattern intentionally duplicates a small subset of fields to avoid a lookup on every read. The trade-off is update complexity, not invalidity. Calling the design invalid misunderstands the pattern and would push developers toward unnecessary joins.
- ✗
The design guarantees strong consistency between the user document and all posts as long as both writes occur in a single transaction.
Why it's wrong here
A transaction can make the user update and the post updates atomic, but it does not create ongoing consistency between the collections. Future changes still need explicit propagation, and transactions have size and duration limits. The pattern's consistency is ultimately maintained by application logic, not by the transaction alone.
- ✗
No propagation is needed because MongoDB automatically synchronizes duplicated fields across collections when the source document changes.
Why it's wrong here
MongoDB has no cross-collection referential integrity or automatic field synchronization. Each document is independent, and nothing propagates a change from the user document to embedded copies in posts. Relying on automatic sync would leave stale display names in posts, so the application must perform the propagation itself.
- ✓
The change requires an update to the user document plus a multi-document update to every post embedding that author's duplicated fields.
Why this is correct
Extended Reference duplicates a few frequently read fields, so the source of truth and the copies can diverge. When the display name changes, the application must update the user document and also propagate the new value to all post documents that embedded it. This is the known trade-off of the pattern: faster reads in exchange for write-time duplication handling.
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 →
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.