C100DEV Data Modeling Practice Question
Exhibit
{
"_id": 1,
"name": "Product X",
"specs": [
{ "k": "color", "v": "blue" },
{ "k": "size", "v": "large" }
]
}Refer to the exhibit. Which MongoDB design pattern is represented here?
⚠ Common exam trap
Students frequently mistake the Attribute pattern for a standard dynamic schema with random root fields, failing to recognize its specific use of key-value subdocument arrays.
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 Attribute pattern.
This is the Attribute pattern. It is used when you need to store documents where fields vary significantly or when you need to index multiple fields that share a common structure. By transforming key-value pairs into an array of sub-documents, you can create a single multikey index on the 'specs.k' and 'specs.v' fields, allowing for efficient queries across diverse attribute sets that would otherwise require too many individual indexes.
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 Bucket pattern.
Why it's wrong here
The Bucket pattern involves grouping data into documents based on specific criteria like time or count to manage document size. The exhibit shows a key-value structure within an array, which does not represent a grouping of time-series data or a collection of logs, but rather individual entity attributes.
- ✓
The Attribute pattern.
Why this is correct
The Attribute pattern allows for efficient indexing of various attributes within a single collection. By storing attributes in an array of key-value pairs, you can create a single multikey index that covers all possible attributes. This is vital when the number of potential attributes is large or dynamic.
- ✗
The Extended Reference pattern.
Why it's wrong here
The Extended Reference pattern involves embedding commonly used fields from a referenced document to avoid joins. The exhibit shows internal attributes of a single entity, not external references to another document. There is no field here that acts as a link to another collection's data for performance optimization.
- ✗
The Computed pattern.
Why it's wrong here
The Computed pattern involves storing the results of calculations within the document to avoid repeating the math during read operations. The exhibit shows raw data attributes, not pre-calculated results or aggregates. Storing pre-computed values is a specific strategy meant to optimize read-heavy workloads, which is not shown here.
About these practice questions
This C100DEV question is part of Courseiva's 259-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam 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.