数据结构支持有效的远程过滤器+组+按聚合值+分页

时间:2015-08-11 09:51:10

标签: database algorithm sorting data-structures

考虑这些字段的“销售”记录集合:

  • 日期
  • 卖方
  • 收入

这些记录是不可变的,并按时间顺序创建。

现在,考虑给定日期范围的分页查询,按卖家分组,按每个卖家的总收入排序,如下所示:

Top sellers between [date] and [date] - Page 1

1. Alice   $999
2. Bob     $888
3. Chuck   $777
...

假设:

,哪种数据结构/算法可以有效地做到这一点
  • 很多独特的卖家
  • 每个卖家的记录很多
  • 非常多页的结果(对请求页面外的结果没有顺序操作)
  • 日期范围完全可变且任意

我了解如何在没有分组的情况下获得总收入:按日期键入的有序树结构,每个中间节点存储总收入。

没有日期范围的分组同样可以使用在卖家上键入的树,每个节点的收入和唯一卖家的数量。

但结合过滤和分组,我无法弄明白。

对于奖励积分,是否有任何现成的数据库可以做到这一点?并支持定制聚合逻辑,例如地图/减少?

0 个答案:

没有答案