Optimizing DAX is considered a second edition because it aligns with the video course, even though we did not publish a book for the first edition. If you are a student of the video course, you already have access to the PDF version of the book. Thus, this announcement is for those who want a printed copy or are not interested in the video course.

This is the state-of-the-art book on optimizing DAX expressions in Power BI, Fabric, and Analysis Services. If you use Direct Lake in Fabric, you can reference the VertiPaq section because – in terms of performance analysis – you can use the same metrics and techniques used for imported models, which use VertiPaq as a storage engine.

Formats available

We created several digital and printed formats of the book.

eBook formats

We were able to produce all the eBook formats for the more significant marketplaces:

To get the best reading experience, we suggest you use a large reader: if you try to read the book on your phone or a small eBook reader, the many parts with code may be hard to read.

Because the book contains code in different languages (DAX, xmSQL, SQL), we used a different background color for the code snippets to quickly identify the language. Moreover, many screenshots from the Server Timings pane in DAX Studio are more readable when you can see the colors.

Printed formats

Using colors is not a big issue for a digital book if you read it on a color display, but for the printed version, this created a challenge: publishing a book in color is very expensive, so we created two printed editions!

  • Black & white paperback (ISBN 978-1735365220)
    We adapted the colors to a grayscale that makes them distinguishable. The cover is in color, similar to other technical books – but the interior is black & white. This is the less expensive version, but an 800-page book cannot be economical.
  • Hardcover color (ISBN 978-1735365244)
    Colors inside and outside, maximum fidelity of screenshots, and code language that is easy to identify, thanks to the different background colors. The cover is thicker and rigid. However, the content is the same as the black-and-white version. We only published this edition because we just knew someone was going to ask for it— and we wanted a copy for ourselves as well!

The Brick

This book is more than 800 pages long.
Sure, there are a lot of screenshots and pieces of code, but there is also a ton of actual content to read. When we received the first print proof, we quickly got a nickname for this bad boy: The Brick.

Indeed, the weight of a brick may range widely, but let’s say that it starts at around 4.2 lbs (1.9kg). The weight of Optimizing DAX is 3.04 lbs (1.38 kg) for the black & white version and 3.54 lbs (1.60 kg) for the color version. If you plan to read this in bed, ask your personal trainer to make sure that counts towards your upper body goals.

There are an infinite number of additional use cases for this book other than actually reading it. But let’s be honest: you will mainly want to intimidate your coworkers and impress your boss. Pro tip: abuse your book enough to make it look worn, and then ensure they all see a bunch of Post-it notes sticking out and lots (lots!) of highlighting.

Prerequisites

This book is geared towards those who know DAX well. Ideally, you would have completed The Definitive Guide to DAX, or the Mastering DAX video course. The assumption is that you know context transition, expanded table, data lineage, and all the relationship types.

You should also know the Tabular model well, and if you use DirectQuery or composite models, the assumption here is that you already know how to manage those. Mastering Tabular is a video course that covers all these topics if you need to become more proficient. Thus, you should know the available storage types, modeling types, and security features like row-level and object-level security.

FAQ

We know what questions are coming; here are the answers!

  • I have the Optimizing DAX video course: should I buy the book?
    As a video course student, you already have access to the PDF version of the book. It can be found inside the video course, towards the beginning. However, if you want a printed version of the book, yes, you should purchase a copy.
  • How much time do I need to complete the book?
    It depends. The best way to absorb the content is to try all the demos on your machine and repeat the same measures and optimizations. We estimated this to take anywhere from 150 to 200 hours. A quick read will take less time than that, but you will hardly absorb any information without practice.
  • Can I optimize my DAX measures without reading the book?
    Of course. Time to bring up DAX Optimizer, a service that finds the bottlenecks in your measures and suggests improvements – within minutes. It is the more efficient way to find common issues in DAX measures.
  • I use DAX Optimizer. Why should I read the book?
    As proud as we are of DAX Optimizer, it cannot solve all the scenarios. However, DAX Optimizer allows you to spend time only on the more complex issues, where the knowledge acquired with Optimizing DAX is needed to find more ways to optimize the code.
  • Why should I optimize DAX? Shouldn’t it be fast by default?
    Yes, there is undoubtedly a universe where any language is automatically optimized. Unfortunately, we do not live in that universe. Call it bad luck.
  • A language that requires an 800-pager to optimize cannot be serious.
    Was there a question we can assist with? However, is it better not to know?

What’s next

We will continue to publish articles and whitepapers on new advancements in DAX optimization. If and when we identify enough reasons to create a third edition, we will evaluate it, but that is unlikely to happen before 2030. Assuming people will still be interested in reading books by then.

Live the present moment, and enjoy DAX!