Hack News:
Reddit:
从数学角度两者相差不大,但是从实际开发角度,第二种(reddit)模型要远远优于第一种模型。
第一种算法的分数是一个动态值,如果想排序有两种途径:
select * from problems order by f(current_time, othor_value) desc limit 20;
很显然,上面的排序无法利用索引。
还有一种办法是每隔一段时间去计算一次所有条目的 score 值,这样是可以利用索引排序的,但是排名不够平滑。
Reddit 的算法就完美解决了这个问题,无论什么时间,score 都是一个定植,只需要在相关因素有变动的时候去更新一下对应的 score 值。既可以利用索引,排序又平滑,并且简单。
select * from problems order by rank desc limit 20;
阉割版的?只有 4 个表?
Java(script)?
V5!
选错节点了...
是
#18 楼 @blacktulip 博士还灌水?!
数据库迁移是有顺序依赖的,不能并行。
?
可见一斑