← ClaudeAtlas

power-bi-performancelisted

Use for query performance tracing, benchmarking, VertiPaq Analyzer diagnostics, storage engine vs formula engine analysis, and slow DAX investigation. Triggers on: "slow query", "performance", "VertiPaq", "trace", "benchmark", "storage engine", "formula engine", "DirectQuery slow", "cardinality", "pbi trace", "pbi benchmark", "DAX Studio equivalent", "query plan", "memory pressure", "model size". Do NOT trigger for DAX expression authoring (→ power-bi-dax) or model schema redesign (→ power-bi-modeling).
mudassir09/pbi-enterprise-cli · ★ 0 · API & Backend · score 75
Install: claude install-skill mudassir09/pbi-enterprise-cli
# power-bi-performance Query tracing, benchmarking, VertiPaq analysis, and storage/formula engine diagnostics. ## Quick Reference ```bash # Trace a DAX query pbi trace start --query "EVALUATE SUMMARIZE(Sales, Calendar[Year], \"Rev\", SUM(Sales[Revenue]))" pbi trace start --measure "Total Revenue" --duration 30s pbi trace start --query-file ./queries/slow.dax --output ./traces/slow-trace.json # Benchmark a measure pbi benchmark --measure "Total Revenue" --iterations 10 pbi benchmark --measure "YTD Revenue" --iterations 20 --json # VertiPaq / model size analysis pbi trace model-stats pbi trace model-stats --json | jq '.tables | sort_by(.sizeBytes) | reverse | .[0:5]' ``` --- ## Worked Example 1: Profile a slow visual ```bash # 1 — Capture a trace while the slow visual refreshes pbi trace start --duration 60s --output ./traces/dashboard-trace.json # (manually refresh the slow visual in Desktop during the 60s window) # 2 — Inspect the trace cat ./traces/dashboard-trace.json | jq '.events[] | select(.durationMs > 500)' # 3 — Benchmark the suspected measure pbi benchmark --measure "Complex KPI" --iterations 20 --json ``` --- ## Worked Example 2: VertiPaq table size analysis ```bash pbi trace model-stats --json > model-stats.json # Top 5 tables by size jq '.tables | sort_by(.sizeBytes) | reverse | .[0:5] | .[] | {name: .name, sizeMB: (.sizeBytes / 1048576 | round), rows: .rowCount, cardinality: .columnCardinality}' model-stats.json ``` Expected outpu