Book Image

Microsoft Power BI Performance Best Practices

By : Bhavik Merchant
Book Image

Microsoft Power BI Performance Best Practices

By: Bhavik Merchant

Overview of this book

This book comprehensively covers every layer of Power BI, from the report canvas to data modeling, transformations, storage, and architecture. Developers and architects working with any area of Power BI will be able to put their knowledge to work with this practical guide to design and implement at every stage of the analytics solution development process. This book is not only a unique collection of best practices and tips, but also provides you with a hands-on approach to identifying and fixing common performance issues. Complete with explanations of essential concepts and practical examples, you’ll learn about common design choices that affect performance and consume more resources and how to avoid these problems. You’ll grasp the general architectural issues and settings that broadly affect most solutions. As you progress, you’ll walk through each layer of a typical Power BI solution, learning how to ensure your designs can handle scale while not sacrificing usability. You’ll focus on the data layer and then work your way up to report design. We will also cover Power BI Premium and load testing. By the end of this Power BI book, you’ll be able to confidently maintain well-performing Power BI solutions with reduced effort and know how to use freely available tools and a systematic process to monitor and diagnose performance problems.
Table of Contents (21 chapters)
Part 1: Architecture, Bottlenecks, and Performance Targets
Part 2: Performance Analysis, Improvement, and Management
Part 3: Fetching, Transforming, and Visualizing Data
Part 4: Data Models, Calculations, and Large Datasets
Part 5: Optimizing Premium and Embedded Capacities

Which choices affect performance?

While there are many aspects of each individual Power BI component that can be optimized for performance, the following list is a good summary that can serve as a checklist for every solution:

  • Inappropriate use of DirectQuery/Import: Decisions here balance model size and refresh time with data freshness and report interactivity.
  • Power Query design: Decisions here may fail to leverage the data source's native capabilities and therefore also fail to avoid additional work in the mashup engine.
  • Data modeling: Decisions here may make the data model unnecessarily large, waste memory, consume more computing resources, and affect usability.
  • Inefficient DAX calculations: Decisions here may fail to leverage the highly efficient internal VertiPaq Storage Engine and force operations in the Formula Engine.
  • Complex or inefficient row-level security: Decisions here may create intensive calculations to resolve which rows the user can see.
  • Poorly designed reports: Decisions here can put too much load on the user's device.
  • Data source or network latency: Decisions here may place the data far away from the user.

Now that you have learned about the high-level areas of a solution that we need to consider to fully optimize performance, let's summarize the key learnings from this chapter.