Choose Between DirectQuery and Import (PL-300 Exam Prep)

This post is a part of the PL-300: Microsoft Power BI Data Analyst Exam Prep Hub; and this topic falls under these sections: 
Prepare the data (25–30%)
--> Get or connect to data
--> Choose Between DirectQuery and Import


Note that there are 10 practice questions (with answers and explanations) at the end of each section to help you solidify your knowledge of the material. Also, there are 2 practice tests with 60 questions each available on the hub below the exam topics section.

One of the critical decisions a Power BI Data Analyst makes is how Power BI retrieves and interacts with data. The choice between DirectQuery and Import affects performance, modeling flexibility, scalability, and how data refresh is managed. This topic is core to the Get or connect to data objective and frequently appears in scenario-based exam questions.


What Are Import and DirectQuery?

Before comparing them, it’s important to understand what each mode does:

  • Import: Loads data from a data source into the Power BI dataset’s in-memory storage. Once imported, Power BI interacts with the data locally and refreshes it periodically.
  • DirectQuery: Does not store data in Power BI. Instead, it queries the source system in real time whenever the report needs data.

Import vs. DirectQuery – Conceptual Overview

Here’s the high-level conceptual difference:

AspectImportDirectQuery
Where data is storedIn Power BI’s in-memory engineIn the source system
PerformanceVery fast (in-memory)Depends on source performance
Data freshnessRequires scheduled refreshAlways up-to-date at query time
Modeling flexibilityFullLimited
Query folding benefitYesLimited (source dependent)
Refresh requiredYesNo
Suitable for large tables?Depends on sizeYes
Depends on gateway?Only for on-premises sourcesYes for on-premises sources

When to Choose Import

Choose Import when:

🟢 Performance and Interactivity Matter

Because data is loaded into memory, visuals and filters respond very quickly, which is ideal for dashboards and interactive exploration.

🟢 Full Modeling Flexibility Is Needed

Import supports:

  • Complex DAX
  • Calculated tables & columns
  • Relationship editing
  • Role-level security

This makes it the most flexible and commonly used mode.

🟢 Data Volume is Manageable

For moderately sized datasets that fit comfortably in memory, Import is typically preferred.

Example Scenario

A finance team needs a dashboard that refreshes nightly and delivers fast slicing and dicing of historical sales data.

In this case, Import is the likely choice.


When to Choose DirectQuery

Opt for DirectQuery when:

🔵 Data Must Stay at Source

Some data may be too large or sensitive to copy into Power BI. With DirectQuery, data remains on the original system.

🔵 Real-Time or Near-Real-Time Data is Required

If reports must reflect the most current operational data instantly, DirectQuery ensures up-to-date results.

🔵 Data Volume Is Massive

For very large tables (e.g., billions of rows), Import is impractical. DirectQuery avoids memory constraints by querying only needed data.

🔵 Source System Can Handle Query Load

DirectQuery performance is heavily dependent on the source system’s ability to process queries quickly.

Example Scenario

A company needs a report showing up-to-the-second inventory levels from an operational database.

In this case, DirectQuery is a better fit.


Trade-Offs: What You Lose With DirectQuery

While DirectQuery offers real-time access and handles large data without importing, it has limitations:

LimitationDirectQuery Impact
Modeling flexibilityReduced (no calculated tables; limited DAX)
PerformanceDepends on underlying source and network
Query loadHeavy impact on source system if not optimized
Transformation optionsLimited Power Query support

Because of these trade-offs, exam scenarios often ask you to weigh performance vs. flexibility vs. freshness.


Composite Models: Best of Both Worlds

Power BI supports composite models, which allow mixing Import and DirectQuery within the same dataset.

Use cases:

  • Import smaller, static reference tables
  • DirectQuery larger, frequently updated fact tables

Composite models provide:

  • Query optimization
  • Flexibility across mixed scenarios

Exam questions may include composite model scenarios, so understanding both modes is helpful.


Decision Criteria (Exam-Ready Framework)

When a question asks “Should you use DirectQuery or Import?”, use this decision checklist:

  1. How current must the data be?
    • Real-time → DirectQuery
    • Static or refreshed periodically → Import
  2. Can the source handle query load?
    • Yes → DirectQuery
    • No → Import
  3. Is high performance critical?
    • Yes and data is manageable → Import
  4. Does modeling complexity matter?
    • Yes → Import
    • Minimal modeling needed → DirectQuery
  5. Is dataset very large?
    • Yes → DirectQuery
    • No → Import

Typical Exam Scenarios

Here are some real-feel patterns that may appear in exam questions:

📌 Scenario: Fast Interactive Reporting

Data refreshes once per day, users need fast slicing.
Answer: Import.

📌 Scenario: Very Large Operational Tables

Real-time insight into an operational system required.
Answer: DirectQuery.

📌 Scenario: Need Most Recent Data Without Refresh Schedule

Source changes constantly; data must reflect current state.
Answer: DirectQuery.

📌 Scenario: Mixed Requirements

A small lookup table and a large facts table.
Answer: Composite model (Import + DirectQuery).


Pitfalls and How to Avoid Them

❌ Mistake: Choosing DirectQuery “just in case”

DirectQuery reduces modeling capability and can slow performance if the source isn’t optimized.

Tip: Choose DirectQuery for specific reasons—not by default.

❌ Mistake: Ignoring refresh schedule

Import requires scheduled refreshes. Forgetting this can lead to stale visuals.

Tip: Always confirm refresh requirements before choosing Import.


Key Exam Takeaways

  • Import = data loaded into memory (fast & flexible)
  • DirectQuery = data queried live (real-time & scalable)
  • Composite models combine both
  • Use decision criteria based on performance, freshness, modeling, and source capability
  • Always consider source capacity and query load

Understanding why you choose one mode over the other is more important than memorizing UI steps—especially on the PL-300 exam.


Practice Questions

Go to the Practice Exam Questions for this topic.

One thought on “Choose Between DirectQuery and Import (PL-300 Exam Prep)”

Leave a comment