PL-300 Visualize and analyze the data Practice Question
You have a Power BI report that uses a DirectQuery connection to a large SQL Server data warehouse. Users report that slicers and filters are slow to respond. What should you recommend to improve performance?
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
✓
Optimize the SQL queries and add appropriate indexes in the data warehouse.
With DirectQuery, every slicer and filter interaction is translated into a SQL query sent to the source, so performance depends heavily on the underlying SQL Server query efficiency and index availability; optimizing the SQL and adding appropriate indexes reduces query execution time and speeds up slicer/filter responsiveness. Option B does not fit because a live connection is used with Analysis Services (tabular/multidimensional) models, not a SQL Server data warehouse, and it would not improve the underlying query performance. Option C does not fit because increasing Power BI service capacity memory does not address slow source-side SQL execution in DirectQuery. Option D does not fit because switching to Import mode changes the architecture and introduces refresh latency and dataset size limits, rather than directly fixing the DirectQuery query performance issue described.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Optimize the SQL queries and add appropriate indexes in the data warehouse.
Why this is correct
DirectQuery translates report visuals into SQL queries executed in real time against the data warehouse, so the source system's query cost is the core bottleneck. By optimizing the SQL—reducing unnecessary joins, pushing predicates and aggregations to the source—and adding appropriate indexes on foreign keys, date columns, and frequently filtered columns, you directly lower query execution time. This is the most effective way to improve report responsiveness without leaving DirectQuery mode.
- ✗
Change the connection to a live connection to the data warehouse.
Why it's wrong here
A live connection in Power BI is a read-only connection to an Analysis Services model or Power BI dataset, not to a raw data warehouse; if pointed at a warehouse, it functions like DirectQuery and still sends native queries to the source. Moreover, switching to a live connection does not cache any data in Power BI, so the same slow SQL or missing indexes continue to hamper performance. Without a pre-aggregated tabular model, the bottleneck remains the warehouse's query engine, making this change ineffective.
- ✗
Increase the memory allocated to the Power BI service capacity.
Why it's wrong here
DirectQuery queries are executed on the data warehouse, not in Power BI's memory; the capacity merely hosts the report's metadata and renders results returned by the source. Increasing memory allocated to the Power BI service capacity only increases the number of concurrent refreshes, visual caching, and the amount of imported data that can be held, none of which accelerate source-side SQL execution. Therefore, this adjustment addresses capacity concurrency issues, not the latency stemming from poor query plans or row scans.
- ✗
Switch the report to Import mode and schedule refreshes.
Why it's wrong here
Switching to Import mode loads a copy of the entire warehouse into Power BI's in-memory columnstore, which can make report interactions fast after the refresh completes; however, it introduces a fixed refresh interval that may not be acceptable when real-time data is required. Large data volumes can also exceed the capacity's memory limits, and the initial import time is still constrained by the same suboptimal SQL and indexes if the warehouse query is slow. This trade-off fails to address the need for direct query performance and may cause data staleness.
Go deeper
Related to this question
About these practice questions
One of 524 original PL-300 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This PL-300 practice question is part of Courseiva's free Microsoft 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 PL-300 exam.