gpt4 book ai didi

java - RethinkDB 中的映射会针对相同的值多次计算相同的事物吗?

转载 作者:搜寻专家 更新时间:2023-11-01 03:19:29 25 4
gpt4 key购买 nike

我正在使用 RethinkDB Java 驱动程序,并希望为特定字段的每个值计算平均偏差。

所以,我写了这段代码:

public static ReqlExpr avgdev(ReqlExpr expr, String field) {
return expr.map(
entry -> entry.g("parent_document").g(field).sub(expr.avg(row -> row.g("documents").g(field)))
);
}

如您所见,平均值计算了多次。对于这样的计算,RethinkDB 会自动确保只计算一次平均值,还是我应该手动计算一次平均值,然后用它来计算偏差?

我问这个是因为我正在使用的设计模式在这种情况下可能会发生重大变化。

最佳答案

RethinkDB 现在不做任何类型的公共(public)子表达式消除。我建议用 do 分解出公共(public)子表达式(比如 expr.avg(...).do(avg -> expr.map(...))).

关于java - RethinkDB 中的映射会针对相同的值多次计算相同的事物吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34809719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com