Next Gen Data Learning – Amplify Your Skills

Blog Home

Blog

VertiPaq Storage Engine On Multi-Threaded Environment

by | DAX

In this tutorial, you’ll learn about segmentation in the VertiPaq storage engine.

Segmentation allows you to minimize performance hits that can affect your report and quickly generate results. This tutorial will help you understand how it works and how it helps your DAX calculations to function well.

VertiPaq also has the ability to work in a multi-threaded environment through segmentation. 

Segmentation In VertiPaq Storage Engine

Segmentation takes your large tables and divides them into smaller segments. Every segment has to be at least 1 million rows.

When you do this, it will allow VertiPaq to scan the blocks of your table one at a time.

Compression occurs per segment. This makes the performance faster and smoother.

Unlike the formula engine that only uses a single thread at a time, VertiPaq can use more than one core per segment if this option is available.

Segmentation works in four steps:

vertipaq storage engine

If you have a four-million-row fact table, VertiPaq divides it into four 1-million segments. It will compress segment 1 and at the same time, read and encode segment 2. This process exhibits the perfect example of the multi-threaded environment inside VertiPaq. The last step builds the calculated columns and relationships.

You have to remember that the calculated columns will be compressed. They will be built after the other segments have been compressed.

This is an example of a segmented database:

vertipaq storage engine

It has a FactSales table that has 3.4 million rows.

Since Power BI defaults 1 million rows per segment, you’ll get three 1 million rows and 1 row for the remaining value. You now have a total of 4 segments.

If you have too many segments, the performance of your DAX will slow down. So it’s best to have bigger segments.

Conclusion

Segmentation in the VertiPaq storage engine improves your DAX. If you’re having a performance issue with your DAX, it may be because of how your data has been segmented.

Understanding how segmentation operates in your report will give you a better idea of how to maximize and utilize your data to obtain the expected results.

Nick

***** Related Links *****
Customer Segmentation Techniques Using The Data Model – Power BI & DAX
Budgeting Performance Segmentation Using DAX In Power BI
Data Segmentation Techniques Based On Any Measure – Advanced DAX

***** Related Course Modules *****
Optimizing DAX
Ultimate Beginners Guide To DAX
Best Practices & Feature Reviews

***** Related Support Forum Posts *****
Segmentation Based On Multiple Criteria Across Tables
Total Count After Application Of Segmentation Is Incorrect
Customers Segmentation Regarding To Product Mix
For more segmentation support queries to review see here….

Related Posts