powerbi - 在 DAX 中使用整个表时性能总是很差吗?
问题描述
所以我读到使用表名会导致表扩展,从而导致性能下降。
我知道在 FILTER 中使用 tablename 时会发生这种情况。但是,如果我在 REMOVEFILTERS 中使用表名,那么这是否也会导致表扩展/性能不佳?
解决方案
不,当您使用 REMOVEFILTERS 时,DAX 引擎仅标记要从中删除所有过滤器的扩展表,仅此而已,这不会对性能产生任何影响。
在基本计算中引用表名是可以的以数据缓存的形式在内存中具体化整个表,公式引擎稍后将在该缓存上进行迭代。
巨大的物化表是一个大问题,因为 Vertipaq 的架构是为了减少 RAM 的使用,但是物化表是内存中的未压缩表,它们会消耗大量的 RAM。
如果您想自己创建物化进行测试,请尝试使用 SAMPLE 或 GROUBPY 作为顶级函数并使用 DAX Studio 确认物化。
我的建议是尽可能使用单个列,这样可以更快地扫描列/字典,更多列将需要扫描列然后加入它们。
推荐阅读
- spring-mvc - Spring 5 Webflux 有自己的 SNS + SQS 实现方式吗?
- angular - Ngxs - 状态未定义
- postgresql - postgresql 无法正确启动退出活动(已退出)
- ssl - 如何在 Windows 10 中安装 OpenSSL?
- jquery - .addClass() 和 .removeClass() 具有动态命名的元素
- list - 如何使用集合减法保留重复项?
- python - 使用 tensorflow-gpu 进行预测比 tensorflow-cpu 慢
- c# - 在 C# 中使用 Dictionary 存储和访问 Xml 元素
- jquery - 如何为每一行设置css边框?
- python - 在 Tkinter 的表格中显示数据的最佳方式是什么?