Free PL-300 Model the data practice test questions
8 questions from this domain with answers and explanations - different from the samples on the main PL-300 page. Sign up free to practice the full set.
-
You are designing a data model for a sales analysis solution. The model contains a Sales fact table and dimension tables for Product, Customer, and Date. Which schema design pattern does this represent?
- ASnowflake schema
- BFlat table design
- CNormalized schema
- DStar schemaCorrect
✓ Correct answer: DA star schema places a central fact table surrounded by independent dimension tables, each connected directly to the fact table by a relationship. With a Sales fact table linked to Product, Customer, and Date dimensions, the diagram radiates outward like a star, which minimizes joins and makes the model efficient and intuitive for analytical queries in Power BI.
Why the other options are wrong- AA snowflake schema further normalizes the dimension tables into chains of related sub-tables (for example Product to Category to Subcategory), a layering that is not present in this single-level dimension design.
- BA flat table design stores all attributes and facts together in one wide, denormalized table with no separate dimensions, which is the opposite of the multi-table structure described here.
- CA normalized schema refers to the highly normalized relational designs used for transactional systems, which differ from the analytics-oriented dimensional model described in this scenario.
-
You need to create a DAX measure that calculates running total of sales from the beginning of the year to the current date in the filter context. Which DAX function should you use?
- ACLOSINGBALANCEYEAR
- BTOTALYTDCorrect
- CPARALLELPERIOD
- DPREVIOUSYEAR
✓ Correct answer: BTOTALYTD is a time intelligence function that accumulates a measure from the beginning of a calendar year to the current date in the filter context. It is specifically designed for year-to-date running totals. The function automatically handles date navigation within the defined date table, making it the most appropriate choice for a running total from January 1st through the current date in any year.
Why the other options are wrong- ACLOSINGBALANCEYEAR is incorrect because it returns the value at the end of the year, not a running total from the beginning of the year.
- CPARALLELPERIOD is incorrect because it shifts the filter context to a different period for comparison, not for calculating running totals.
- DPREVIOUSYEAR is incorrect because it returns values from the previous year, not a running total from the current year's start.
-
In Power BI, when you set a column's visibility to 'Hidden' in the model, it is still available for use in DAX calculations and measures.
- AFalse
- BTrueCorrect
✓ Correct answer: BHidden columns in Power BI remain fully accessible in DAX expressions and measures. The 'Hidden' visibility property only removes the column from the Field list shown to report creators, making the model interface cleaner and preventing accidental use in visuals. However, the underlying data is still present in memory, and any DAX measure or calculated column can reference hidden columns. This allows developers to hide implementation details while still leveraging those columns in calculations.
Why the other options are wrong- AFalse is incorrect. The statement is true. Hidden columns in Power BI remain fully accessible in DAX expressions and measures. The 'Hidden' visibility property only removes the column from the Field list shown to report creators, making the model interface cleaner and preventing accidental use in visuals.
-
You need to create a calculated table in DAX that contains only the top 10 customers by sales amount. Which DAX function should you use?
- AFILTER(Customer, RANKX(Customer, [Total Sales]) <= 10)
- BSELECTTOP(10, Customer[Name], [Total Sales])
- CFIRSTN(10, Customer, [Total Sales])
- DTOPN(10, Customer, [Total Sales], DESC)Correct
✓ Correct answer: DThe TOPN function is the standard DAX function for creating a calculated table of the top N items ordered by a specific measure or column. TOPN(10, Customer, [Total Sales], DESC) returns exactly 10 customer rows sorted by Total Sales in descending order, making it ideal for a calculated table of top customers.
Why the other options are wrong- AFILTER(Customer, RANKX(Customer, [Total Sales]) <= 10) is incorrect because RANKX returns a rank number, not a table, and this syntax doesn't create a valid calculated table.
- BSELECTTOP(10, Customer[Name], [Total Sales]) is incorrect because SELECTTOP is not a standard DAX function.
- CFIRSTN(10, Customer, [Total Sales]) is incorrect because FIRSTN doesn't exist in DAX; the correct function is TOPN.
-
A data analyst needs to configure incremental refresh for a Sales table containing 5 years of historical data. The table connects to an Azure SQL Database. Which TWO requirements must be met before incremental refresh can be configured? (Choose two.)
- AThe semantic model must use DirectQuery storage mode
- BThe Power Query query must include parameters named RangeStart and RangeEnd of type Date/TimeCorrect
- CThe table must have fewer than 1 million rows
- DThe data source must support query folding so the date range filter is pushed to the serverCorrect
✓ Correct answer: B, DIncremental refresh is configured by filtering the table between two reserved Date/Time parameters named exactly RangeStart and RangeEnd, which Power BI uses to define partition boundaries. For the partitioning to be efficient, the source must support query folding so that the date-range filter is translated into a server-side query rather than scanning all rows locally. Meeting both prerequisites lets Power BI refresh only the recent partitions.
Why the other options are wrong- AIncremental refresh applies to Import (and hybrid) tables; it is not a DirectQuery requirement, so DirectQuery storage mode is not needed.
- CIncremental refresh is intended for large tables; there is no requirement that the table have fewer than 1 million rows.
-
Woodgrove Bank has a Sales fact table with a SalesAmount column and a related Product dimension. The analyst needs a Total Sales value that responds to slicers and a Sales per Product figure that iterates each product row, multiplying quantity by unit price before summing, so the base value must recompute inside a row context. Which TWO should the analyst create? (Choose two.)
- AA measure using SUM(Sales[SalesAmount])Correct
- BA measure using SUMX(Product, [row-level product total])Correct
- CA calculated column storing SalesAmount on each row
- DA measure using COUNTROWS(Sales)
- EA calculated table generated with SUMMARIZE
✓ Correct answer: A, BA measure with SUM(Sales[SalesAmount]) aggregates within the current filter context and updates as slicers change, satisfying the Total Sales requirement. SUMX iterates the Product table row by row, and referencing a measure inside it forces context transition, converting the current row into an equivalent filter so the quantity times unit price is evaluated per product before being summed.
Why the other options are wrong- CA calculated column is computed at refresh and stored per row, so it does not respond to slicers the way the required measures do.
- DCOUNTROWS returns a row count, which measures neither total sales nor a per-product monetary figure.
- EA SUMMARIZE calculated table materializes a grouped table at refresh rather than producing the two dynamic values requested.
-
When configuring row context at Contoso Ltd, administrators must also consider hierarchies as part of the overall architecture.
- TrueTrueCorrect
- FalseFalse
✓ Correct answer: TrueRow context and hierarchies are interdependent architectural elements in Power BI data models. Row context determines how DAX expressions evaluate when iterating through individual rows in tables, which is particularly important when hierarchies are used in visualizations or calculations. When configuring row context, administrators must understand how it interacts with hierarchies in dimensions, especially for calculated columns that reference hierarchy levels. Hierarchies provide the organizational structure that row context evaluates when processing column expressions, making their consideration essential for proper row context implementation.
Why the other options are wrong- FalseFalse is incorrect. The statement is true. Row context and hierarchies are interdependent architectural elements in Power BI data models. Row context determines how DAX expressions evaluate when iterating through individual rows in tables, which is particularly important when hierarchies are used in visualizations or calculations.
-
You implement dynamic RLS on the Sales table via a Users dimension: the role filter on Users is [Email] = USERPRINCIPALNAME(). Sales relates to Users (one-to-many, single direction Users to Sales). Regional managers report they can see sales rows but the related Product table still shows ALL products in slicers regardless of their region. Without changing the source data, what is the correct model change to also restrict Product to only products the manager actually sold?
- ASet the Sales-to-Product relationship cross-filter direction to Both so the RLS-filtered Sales rows propagate back up to filter Product, and confirm the security model still behaves as intended.Correct
- BAdd a second row-level security filter expression directly on the Product table that compares a product-owner column against USERPRINCIPALNAME(), so that each manager only ever sees their own products in the slicer.
- CChange the cardinality of the Users-to-Sales relationship to many-to-many so that the row-level security filter can travel further through the model and eventually reach and restrict the Product table as well.
- DMark the Product table as the model's official date table so that the time-intelligence filter propagation carries the row-level security restriction across into the product slicer along with it.
✓ Correct answer: ARLS filters propagate following relationship cross-filter directions. With single-direction filtering from the one-side dimensions down to the fact, a security filter that lands on Sales does not flow back UP to Product, so Product is unfiltered. Setting the fact-to-dimension relationship to bidirectional (or using a measure-based pattern) allows the secured Sales rows to filter Product to only the relevant products. You must validate this with View As Roles because bidirectional filters can have performance and additional security implications.
Why the other options are wrong- BProduct has no user column, so a USERPRINCIPALNAME filter there cannot map managers to the products they sold.
- CMany-to-many does not push the RLS filter to Product; single-direction filtering still stops at Sales.
- DMarking a date table has nothing to do with propagating a security filter to the Product table.
How Model the data is tested
This domain holds 186 of the 690 questions in the PL-300 bank, about 27%. The mix is 105 single-answer multiple choice, 38 multiple-response, 31 true/false, 5 hotspot, 4 ordering and 3 yes/no scenario, so it is worth practising the formats as well as the content.
Once you have a few attempts recorded, CertGrid scores every domain separately and points you at the weakest one, so you can drill Model the data on its own rather than re-running full-length mocks.
Other PL-300 exam domains
- Prepare the data193 questions
- Visualize and analyze the data176 questions
- Manage and secure Power BI135 questions
- All PL-300 practice questions690 total
- Model the data study notesKey concepts
- Microsoft practice examsAll Microsoft
PL-300 Model the data FAQ
How many PL-300 practice questions are there on Model the data?
CertGrid has 186 PL-300 practice questions mapped to Model the data, which is about 27% of the 690-question PL-300 bank. Every one carries a full explanation covering why the right answer is right and why each wrong option is wrong.
Can I practice only the Model the data domain?
Yes. Inside CertGrid you can run a focused drill on a single exam objective rather than the whole bank, and the app picks your weakest domain automatically once you have attempts to measure. The button on this page starts a Model the data drill directly.
How is Model the data tested on the PL-300 exam?
In this bank the domain is made up of 105 single-answer multiple choice, 38 multiple-response, 31 true/false, 5 hotspot, 4 ordering and 3 yes/no scenario questions, and it accounts for roughly 27% of the practice pool. Mapping follows the current published exam objectives; CertGrid is an independent practice platform and these are not official exam questions.
What CertGrid is (and is not)
CertGrid is an independent IT certification practice platform for Azure, AWS, Google, Cisco, Security, Linux, Kubernetes, Terraform, and other certification tracks. It provides objective-mapped practice questions, readiness scoring, weak-domain drills, and explanations to help learners understand what to study next.
Independent & original. CertGrid is an independent practice platform and is not affiliated with or endorsed by Microsoft. Questions are original practice items designed to mirror certification concepts and exam style. CertGrid does not provide official exam questions or braindumps.