Courseiva
← Back to MongoDB Certified Associate Developer questions

Scenario-based practice

Refer to the Exhibit Practice Questions

Practise MongoDB Certified Associate Developer practice questions — original exam-style scenarios covering every exam domain, with detailed explanations, wrong-answer analysis, and common exam traps.

15
scenario questions
C100DEV
exam code
MongoDB
vendor

Scenario guide

How to approach refer to the exhibit practice questions

Practise exhibit-style questions that ask you to read a topology, table, command output or diagram before choosing the best answer.

Quick answer

Exhibit-style questions test whether you can read a topology, command output, diagram or table before choosing the best answer.

How to extract the relevant detail from an exhibit.

How topology, command output or routing information affects the answer.

How to avoid answering from memory before reading the evidence.

How to map the exhibit back to the exam objective.

Related practice questions

Related C100DEV topic practice pages

Scenario questions usually connect to one or more exam topics. Use these links to review the underlying concepts behind the scenario.

Practice set

Practice scenarios

Question 1mediummultiple choice
Full question →

Refer to the exhibit. What is the most appropriate next step for an application encountering this error?

Exhibit

Error: Transaction 1 has been aborted on node 1. (TransientTransactionError)
Question 2hardmultiple choice
Full question →

Refer to the exhibit. You have a collection where each document contains a 'tags' array. If you frequently query for documents containing specific tags, what is the best way to model and index this data?

Exhibit

db.collection.createIndex({ "tags": 1 })
Question 3hardmultiple choice
Full question →

Refer to the exhibit. The document uses the Attribute Pattern. Why is this model superior for indexing compared to storing specs as a single sub-document `{ RAM: '16GB', CPU: 'i7' }`?

Exhibit

{
  "product": "laptop",
  "specs": [
    { "k": "RAM", "v": "16GB" },
    { "k": "CPU", "v": "i7" }
  ]
}
Question 4hardmultiple choice
Full question →

Refer to the exhibit. You are implementing the Subset Pattern for a user profile that tracks recent orders. As the number of orders per user grows indefinitely, which strategy prevents the 'unbounded array' anti-pattern?

Exhibit

{ "user": "alice", "orders": [ { "id": 1, "total": 50 }, { "id": 2, "total": 100 } ], "order_count": 2 }
Question 5hardmultiple choice
Full question →

Refer to the exhibit. Why would an operation attempting to insert the document shown in the exhibit fail?

Exhibit

{
  "_id": ObjectId("60f..."),
  "user": "alice",
  "metadata": {
    "$created": "2023-01-01",
    "last_login": null
  }
}
Question 6mediummultiple choice
Full question →

Which schema pattern is demonstrated in the exhibit provided?

Exhibit

Refer to the exhibit: 
{ "_id": 1, "name": "UserA", "orders": [ { "id": 101, "total": 50 }, { "id": 102, "total": 100 } ] }
Question 7hardmultiple choice
Full question →

Refer to the exhibit. What is the impact of setting 'dynamic' to true in this Atlas Search index definition?

Exhibit

{
  "name": "default",
  "definition": {
    "mappings": {
      "dynamic": true
    }
  }
}
Question 8mediummultiple choice
Full question →

Refer to the exhibit. An application receives this error during a multi-document transaction. What is the correct approach for the application developer?

Exhibit

{
  "error": "MongoError: Transaction 1 has been aborted",
  "code": 251,
  "errorLabels": ["TransientTransactionError"]
}
Question 9hardmultiple choice
Full question →

Refer to the exhibit. What happens to documents in the collection that do not contain the 'category' field?

Exhibit

db.collection.aggregate([ { $group: { _id: "$category", total: { $sum: "$price" } } } ])
Question 10hardmultiple choice
Full question →

Refer to the exhibit. What is the effect of the $unwind stage on the aggregation pipeline?

Exhibit

db.sales.aggregate([
  { $match: { status: "A" } },
  { $lookup: { 
      from: "items", 
      localField: "item_id", 
      foreignField: "_id", 
      as: "details" 
  } },
  { $unwind: "$details" }
])
Question 11hardmultiple choice
Full question →

Refer to the exhibit. Which design pattern is used to store 'total_price' in the document?

Exhibit

{
  "_id": "order_101",
  "customer_name": "John Doe",
  "shipping_address": "123 Main St",
  "tax_rate": 0.08,
  "total_price": 108.00
}
Question 12mediummultiple choice
Full question →

Refer to the exhibit. If a query is executed as db.collection.find({ "metadata.type": "book" }), how will MongoDB use the created index?

Exhibit

// Document structure
{
  "_id": 1,
  "metadata": { "type": "book", "genre": "fantasy" }
}

// Index creation
db.collection.createIndex({ "metadata": 1 })
Question 13mediummultiple choice
Full question →

Refer to the exhibit. Why is this pipeline considered suboptimal?

Exhibit

db.users.aggregate([
  { $project: { _id: 0, name: 1, age: 1 } },
  { $match: { age: { $gt: 25 } } }
])
Question 14mediummultiple choice
Full question →

Refer to the exhibit. Which stage should be used to transform this document into three separate documents, one for each tag?

Exhibit

{
  "_id": 1, 
  "tags": ["red", "blue", "green"]
}
Question 15hardmultiple choice
Full question →

Refer to the exhibit. Which MongoDB design pattern is represented here?

Exhibit

{
  "_id": 1,
  "name": "Product X",
  "specs": [
    { "k": "color", "v": "blue" },
    { "k": "size", "v": "large" }
  ]
}

These C100DEV practice questions are part of Courseiva's free MongoDB certification practice question bank. Courseiva provides original exam-style C100DEV questions with detailed explanations, topic-based practice, mock exams, readiness tracking, and study analytics.