Microsoft Certified Power Bi Data Analyst Associate · Free Practice Question Medium

Question 13

A Power BI Data Analyst is designing a data model for a retail company that tracks sales data across multiple regions. The model includes a large fact table with daily sales transactions and several dimension tables for products, customers, and stores. The company requires near real-time updates for sales data, with historical data refreshed daily, and the solution must optimize query performance. The data is stored in an Azure SQL Database.
Which configuration should the analyst implement to meet these requirements?

  • A

    Use Import mode for all tables, with a daily scheduled refresh for the sales fact table and incremental refresh for dimension tables.

  • B

    Use Import mode for the sales fact table with incremental refresh and DirectQuery mode for dimension tables, with a daily refresh for all tables.

  • C

    Use Dual storage mode for the sales fact table and Import mode for dimension tables, with a daily scheduled refresh for all tables.

  • D

    Use DirectQuery mode for all tables, with a real-time refresh for the sales fact table and a daily refresh for dimension tables.

  • E

    Use DirectQuery mode for the sales fact table and Import mode for dimension tables, with a daily scheduled refresh for all tables.

Reveal correct answer

Correct answer: E

Explanation

Problem Breakdown

The retail company requires a Power BI data model to track sales data with:

  • Near real-time updates for the sales fact table.

  • Daily refreshes for historical data.

  • Optimized query performance.

  • Data stored in an Azure SQL Database.

The solution must balance real-time data access, refresh schedules, and performance for a large fact table and related dimension tables.

Why This Configuration?

  • DirectQuery for the Sales Fact Table:

    • DirectQuery mode allows Power BI to query the underlying Azure SQL Database in real-time without storing a copy of the data in Power BI. This meets the requirement for near real-time updates for sales data, as queries reflect the latest data in the source.

    • Since the sales fact table is large and frequently updated, DirectQuery avoids the overhead of importing and storing large datasets in memory, which would be resource-intensive and less suitable for real-time updates.

  • Import Mode for Dimension Tables:

    • Dimension tables (e.g., products, customers, stores) are typically smaller and less frequently updated compared to the sales fact table. Using Import mode for these tables allows Power BI to cache the data in memory, which significantly improves query performance for filtering and slicing operations.

    • A daily scheduled refresh ensures that dimension data stays up-to-date without overloading the system with frequent real-time queries.

  • Daily Scheduled Refresh for All Tables:

    • For the sales fact table in DirectQuery mode, a daily refresh is not strictly necessary for real-time data (as queries hit the source directly), but this option may imply a fallback for aggregated or historical data processing in some configurations. For dimension tables in Import mode, the daily refresh ensures historical data is updated as required.

Why Not the Other Options?

  • Import Mode for All Tables with Daily/Incremental Refresh:

    • Import mode for the sales fact table would require loading the entire large dataset into memory, which is inefficient for real-time updates. Incremental refresh for dimension tables is valid but doesn’t address the real-time requirement for the sales fact table.

  • Dual Storage Mode for Sales Fact Table:

    • Dual storage mode allows some data to be imported and some to be queried in real-time. While this can optimize performance, it adds complexity and may not fully meet the near real-time requirement if the imported portion lags behind the source.

  • DirectQuery for All Tables:

    • Using DirectQuery for dimension tables would lead to slower query performance, as every query (even for small, static dimension data) would hit the database, increasing latency and load on the Azure SQL Database.

  • Import Mode for Sales Fact Table with Incremental Refresh and DirectQuery for Dimension Tables:

    • This reverses the optimal configuration. Using DirectQuery for dimension tables would degrade performance for frequently accessed, smaller datasets, and incremental refresh for the sales fact table wouldn’t provide near real-time updates.

Practical Considerations

  • Performance Optimization: Combining DirectQuery for the large fact table and Import mode for dimension tables leverages the strengths of both modes. Import mode ensures fast access to dimension data, while DirectQuery ensures real-time access to transactional data.

  • Azure SQL Database: Ensure the database is optimized for DirectQuery (e.g., proper indexing, partitioning) to handle frequent queries efficiently.

  • Refresh Scheduling: Use Power BI Service to schedule daily refreshes for dimension tables, and monitor DirectQuery performance to avoid bottlenecks.

References:

A.

Import mode for the sales fact table requires loading large datasets into memory, which is inefficient for near real-time updates. Incremental refresh for dimension tables is useful but doesn’t address the real-time requirement for sales data, making this less optimal.

B.

Import mode with incremental refresh for the sales fact table doesn’t support near real-time updates, as data is loaded periodically. DirectQuery for dimension tables degrades performance for smaller, static data, reversing the optimal configuration and reducing efficiency.

C.

Dual storage mode for the sales fact table combines imported and real-time data, adding complexity and potential lag in updates, which may not fully meet the near real-time requirement. Import mode for dimension tables is suitable, but this option is less efficient than DirectQuery.

D.

DirectQuery for all tables ensures real-time data but slows query performance for dimension tables, as every query hits the database. This increases latency and load on the Azure SQL Database, making it less optimal for frequently accessed dimension data.

E.

Using DirectQuery for the sales fact table ensures real-time updates but can lead to slower query performance for large datasets due to frequent queries to the Azure SQL Database. Import mode for dimension tables with a daily refresh is acceptable but doesn’t fully leverage storage mode flexibility.

Discussion

Think the marked answer is wrong, or have a better explanation? Share it below — comments appear after review.

You must be logged in to post a comment.

Preparing For

Your Certification?

255+ certifications
Detailed explanations
Free PDF samples

Has All The Questions You Need