我有一个由其他服务定期更新的数据表。我在数据库中发生这些更新时记录。我希望能够以某种方式评估最近更新的数据记录。
我不想完全选择最新版本,我也想考虑以前的更新。我会尝试用一个例子来解释我的意思。假设我有3个数据项
Item | Updates (Days Ago)
One | 30, 25, 19, 1
Two | 5, 3, 2
Three| 30, 25, 20, 15, 10, 5
因此,根据上面的列表,我想先Three
,因为它似乎是最一致的,并且具有最多的更新。接下来我想two
,因为它最近一直很活跃。最后是one
,因为尽管它有最新的更新,但它在iterim时间窗口中几乎没有更新。
我还没有详细说明我的算法是如何工作的,我还不知道,但我希望能够解释我一般希望实现的目标。
我没有明确地寻找实现,我希望指向一个有用的方向。是否有解决此问题的特定算法或类似问题?
答案 0 :(得分:0)
您可以创建某种形式的加权方程。假设您需要以下条件:
更新次数(numUpdates)
自上次发布后的1 /天(lastPost)
自创建以来每天的平均更新(avgUpdates)
然后,您可以为每个标准指定一个特定的权重。 E.G,
评分=(weight1 * numUpdates)+(weight2 * lastPost)+(weight3 * avgUpdates)