Ravindra BagaleCourses & study guides

27. Performance Tips

27.3 Reduce Model Size and Cardinality

Power BI's VertiPaq engine stores data by column and compresses it. Compression (संक्षेपण) is best when a column has few distinct values (low cardinality). So:

  • Remove unused columns – the biggest win. Every column costs memory, even if nobody uses it.
  • Remove unnecessary rows – e.g. load only the last 3–5 years if older history is not needed.
  • Split Date/Time columns into a Date column and a Time column (or drop the time if not needed). A timestamp with seconds (like Order DateTime) can have millions of unique values; a date column has a few thousand, and an hour column only 24.
  • Round decimals to the precision you need (e.g. 2 decimal places).
  • Avoid high-cardinality text columns such as comments, GUIDs or unique transaction descriptions unless really needed.
  • Use integer keys instead of long text keys where possible.
  • Turn off Auto date/time.
  • Prefer calculated columns in Power Query or the source rather than DAX calculated columns (they compress better and keep the model simpler).
  • Use summarised tables or aggregations (एकत्रीकरण) for very large fact tables.

Ravindra Bagale's Tip

Mitrano, khup students load DateTime columns with seconds, long text comments and unused ID columns, and the model balloons. Split DateTime into Date and Time, remove columns nobody uses, and reduce cardinality. VertiPaq Analyzer in DAX Studio shows which columns take the most space. Ha niyam lakshat theva.