CDW 110V CABOODLE DATA MODEL
FUNDAMENTALS EXAM QUESTIONS WITH
SOLUTIONS 2026
Instructions: This practice exam contains multiple-choice questions covering the core content
domains tested on the CDW 110v Caboodle Data Model Fundamentals exam. Topics include
Caboodle architecture, data flow, fact and dimension tables, snapshot tables, durable keys,
schemas, and ETL processes.
1. What is the primary purpose of the Caboodle Data Warehouse within
the Epic EHR ecosystem?
A. To serve as the real-time transactional database for patient care
B. To provide a centralized, optimized repository for reporting and
analytics
C. To store all unstructured data like clinician notes and PDFs
D. To replace Clarity as the primary reporting database
Correct Answer: B — To provide a centralized, optimized repository for
reporting and analytics
,Rationale: Caboodle is a data warehouse designed for analytical
processing, not for real-time patient transactions (which is Clarity's
role). It is structured for fast and efficient querying for reports and
dashboards.
2. What is the correct order of data flow from source to reporting in the
Epic Caboodle architecture?
A. Clarity → Chronicles → Caboodle
B. Chronicles → Clarity → Caboodle
C. Caboodle → Clarity → Chronicles
D. Chronicles → Caboodle → Clarity
Correct Answer: B — Chronicles → Clarity → Caboodle
Rationale: The data flow path is: Chronicles (Epic's transactional
database) → Clarity (Epic's reporting database) → Caboodle
(dimensional data warehouse). Chronicles data is extracted via ETL into
Clarity, then further extracted, transformed, and loaded into Caboodle.
,3. What is the foundational data modeling structure used in Caboodle?
A. Entity-Relationship (ER) Model
B. Dimensional Modeling (Star Schema)
C. Object-Oriented Model
D. Hierarchical Record-Based Model
Correct Answer: B — Dimensional Modeling (Star Schema)
Rationale: Caboodle uses a dimensional model organized into Fact and
Dimension tables, forming star schemas to optimize query performance
for analytics.
4. Which of the following is NOT a best practice for writing performant
Caboodle queries?
A. Use _Current views for Type 2 data
B. Use specific column names instead of SELECT *
C. Add NOLOCK to queries that do not require transactional consistency
D. Join tables using surrogate keys instead of durable keys
, Correct Answer: D — Join tables using surrogate keys instead of durable
keys
Rationale: For Type 2 tables, you should join using durable keys and
filter to the current row. Surrogate keys in snapshot tables point to the
row that was current at the time the data was loaded and may
represent stale data.
5. What is a primary reason that snapshot data should NOT be used for
audit reporting?
A. Snapshot data is too large to query efficiently
B. Snapshot data is tracked by the Caboodle ETL process and does not
track when a specific change took place
C. Snapshot data only contains current values
D. Snapshot data is not stored in the data warehouse
Correct Answer: B — Snapshot data is tracked by the Caboodle ETL
process and does not track when a specific change took place
FUNDAMENTALS EXAM QUESTIONS WITH
SOLUTIONS 2026
Instructions: This practice exam contains multiple-choice questions covering the core content
domains tested on the CDW 110v Caboodle Data Model Fundamentals exam. Topics include
Caboodle architecture, data flow, fact and dimension tables, snapshot tables, durable keys,
schemas, and ETL processes.
1. What is the primary purpose of the Caboodle Data Warehouse within
the Epic EHR ecosystem?
A. To serve as the real-time transactional database for patient care
B. To provide a centralized, optimized repository for reporting and
analytics
C. To store all unstructured data like clinician notes and PDFs
D. To replace Clarity as the primary reporting database
Correct Answer: B — To provide a centralized, optimized repository for
reporting and analytics
,Rationale: Caboodle is a data warehouse designed for analytical
processing, not for real-time patient transactions (which is Clarity's
role). It is structured for fast and efficient querying for reports and
dashboards.
2. What is the correct order of data flow from source to reporting in the
Epic Caboodle architecture?
A. Clarity → Chronicles → Caboodle
B. Chronicles → Clarity → Caboodle
C. Caboodle → Clarity → Chronicles
D. Chronicles → Caboodle → Clarity
Correct Answer: B — Chronicles → Clarity → Caboodle
Rationale: The data flow path is: Chronicles (Epic's transactional
database) → Clarity (Epic's reporting database) → Caboodle
(dimensional data warehouse). Chronicles data is extracted via ETL into
Clarity, then further extracted, transformed, and loaded into Caboodle.
,3. What is the foundational data modeling structure used in Caboodle?
A. Entity-Relationship (ER) Model
B. Dimensional Modeling (Star Schema)
C. Object-Oriented Model
D. Hierarchical Record-Based Model
Correct Answer: B — Dimensional Modeling (Star Schema)
Rationale: Caboodle uses a dimensional model organized into Fact and
Dimension tables, forming star schemas to optimize query performance
for analytics.
4. Which of the following is NOT a best practice for writing performant
Caboodle queries?
A. Use _Current views for Type 2 data
B. Use specific column names instead of SELECT *
C. Add NOLOCK to queries that do not require transactional consistency
D. Join tables using surrogate keys instead of durable keys
, Correct Answer: D — Join tables using surrogate keys instead of durable
keys
Rationale: For Type 2 tables, you should join using durable keys and
filter to the current row. Surrogate keys in snapshot tables point to the
row that was current at the time the data was loaded and may
represent stale data.
5. What is a primary reason that snapshot data should NOT be used for
audit reporting?
A. Snapshot data is too large to query efficiently
B. Snapshot data is tracked by the Caboodle ETL process and does not
track when a specific change took place
C. Snapshot data only contains current values
D. Snapshot data is not stored in the data warehouse
Correct Answer: B — Snapshot data is tracked by the Caboodle ETL
process and does not track when a specific change took place