我有一个名为消费的函数,它接受 4 个参数,最后按名称汇总一个值。通过这个函数,我试图具体化一些公式,从而获得更好的查询性能。
例如:
let firstFormula = materialize (
consumption("ID", "scale", "node", 100.0)
);
let secondformula = materialize (
consumption("ID", "scale", "node", 60.0)
);
然后我创建一个公式,将来自第一个公式的值除以来自第二个公式的值。
let thirdFormula = view (){
union
firstformula,
secondformula
| summarize
value1 = max(case(Name == "ABCD", todouble(Value), 0.0)),
value2 = max(case(Name == "EFGH", todouble(Value), 0.0))
| project Value = round(value1 / value2 * 100.0, 2)
};
为了检查 CPU 性能,我首先测试了公式,但没有使用 materialize 函数。然后我使用materialize对其进行了测试。我最终从不使用物化的那个中获得了更好的性能。我在这里做错了吗?我是否以错误的方式使用物化功能?