我想根据每条记录的分数和“年龄”(当前时间 - 创建日期)对存储在 riak 中的一些记录进行排序。 在 riak 中进行“时间敏感”查询的最佳方法是什么? 到目前为止,我知道的选项是:
- 实时 mapreduce - 在查询时在 mapreduce 作业中执行整个计算
- ETL 作业 - 定期在后台作业中执行查询,并将结果存储回 riak
- 将其放到应用程序层 - 根本不使用 riak 进行排序,而是使用应用程序层对记录进行排序和缓存。
Mapreduce 似乎是纸上最好的,但是,我已经阅读了关于 riak mapreduce 的实际延迟的混合报告。