Courseiva
Model the datahardMultiple SelectObjective-mapped

How to Improve Performance of a DirectQuery Model in Power BI

Which TWO actions can improve performance of a Power BI DirectQuery model?

Quick Answer

The answer is reducing the number of columns in the query and increasing data source indexing. These two actions directly improve DirectQuery model performance in Power BI by minimizing the amount of data transferred over the network and speeding up how quickly the source database can return results. When you reduce columns, you send leaner SQL queries to the backend, which cuts down on processing time and memory usage, while proper indexing allows the database engine to locate rows faster without scanning entire tables. On the Microsoft Power BI Data Analyst PL-300 exam, this concept tests your understanding of how DirectQuery relies on the source system’s efficiency rather than Power BI’s in-memory engine. A common trap is assuming bidirectional filtering or complex calculated columns help performance, but they actually degrade it by forcing more cross-table scans and on-the-fly calculations. Remember the mnemonic “C.I.” for Columns and Indexes—the two levers that keep your DirectQuery model fast without switching to Import mode.

⚠ Common exam trap

Candidates often confuse performance improvements that apply to Import mode (like reducing columns) with those that are specific to DirectQuery, or they assume bidirectional filtering is always beneficial without considering its overhead on query generation.

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

Ensure proper indexing in the source database

Proper indexing in the source database reduces the query execution time for DirectQuery models. DirectQuery sends queries to the source database in real-time, so efficient indexes on columns used in filters, joins, and aggregations minimize table scans and improve retrieval speed.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Switch the model to Import mode

    Why it's wrong here

    Import mode is not DirectQuery.

  • Enable bidirectional cross-filtering on all relationships

    Why it's wrong here

    Bidirectional can degrade performance.

  • Ensure proper indexing in the source database

    Why this is correct

    Indexing speeds up query execution.

  • Use calculated columns with complex logic

    Why it's wrong here

    Calculated columns can slow queries.

  • Reduce the number of columns in the query

    Why this is correct

    Fewer columns reduce data transfer.

About these practice questions

One of 217 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 →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on PL-300

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. Which TWO actions should you take to improve the performance of a DirectQuery model in Power BI? (Select two.)

medium
  • A.Limit the columns selected to only those needed in the report.
  • B.Use calculated columns instead of measures to precompute values.
  • C.Push filters to the source database as much as possible.
  • D.Create aggregations on the imported tables.
  • E.Implement row-level security filters on the fact table.

Why A: Options A and C are correct. Limiting columns reduces data transfer, and pushing filters to the source database reduces the amount of data processed by Power BI. Option B is wrong because calculated columns in DirectQuery are pushed to the source and can degrade performance. Option D is wrong because aggregations are not supported in DirectQuery mode; they are used in Import mode. Option E is wrong because row-level security filters add overhead and do not improve performance.

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.