Daily DAX : Day 403 INFO.STORAGETABLECOLUMNSEGMENTS
INFO.STORAGETABLECOLUMNSEGMENTS
Category: Diagnostic / Internal function (VertiPaq engine)
Availability: Only works in DirectQuery over Power BI datasets or when using XMLA endpoint with tools like DAX Studio or Tabular Editor.
What it does
Returns detailed information about how a column is physically segmented and stored inside the VertiPaq (in-memory columnar) engine of Power BI / Analysis Services Tabular models.
Syntax
INFO.STORAGETABLECOLUMNSEGMENTS(
TableName,
ColumnName
)
Parameters
| Parameter | Description |
|---|---|
| TableName | Name of the table (as string, e.g. "Sales") |
| ColumnName | Name of the column (as string, e.g. "Order Date") |
Returned Columns (simplified)
| Column | Meaning |
|---|---|
| SegmentNumber | Which data segment (1 segment ≈ 1 million rows) |
| Rows | Number of rows in that segment |
| DictionarySize | Size of value dictionary (bytes) |
| DataSize | Size of compressed column data (bytes) |
| CompressionType | Value encoding + compression method |
| Cardinality | Distinct values in the segment |
| MinValue / MaxValue | Range of values in the segment |
Typical Use Cases
- Performance tuning – Identify columns with poor compression or very high cardinality segments.
- Memory optimization – Find which columns/segments consume the most memory.
- Understanding data distribution – See if new data is always added to the last segment (incremental load pattern).
- Diagnosing refresh issues – Spot segments with abnormal size or bad compression.
Note: This function is not allowed in regular Power BI Desktop calculated columns or measures when the model is in Import mode. It only works via DirectQuery to a Premium workspace/dataset or through XMLA connectivity.
Example (run in DAX Studio against a Premium dataset)
EVALUATE
INFO.STORAGETABLECOLUMNSEGMENTS("Sales", "ProductKey")
This will show you exactly how the ProductKey column is split across segments and how well it is compressed — very useful when you wonder why a fact table is so large in memory.
Use this function during advanced model optimization in Power BI Premium or Azure Analysis Services.
Comments
Post a Comment