大数据排序,请高手指点

我有10亿的用户数据放在节点中;key,value格式:姓名、金额
数据场景:这10亿为交易支付数据,可能存在重复支付的数据
计算设备:一台物理机、配置不限、需要运用nosql中间件来处理这10亿数据。
问题:我要在10秒内对这10亿数据进行计算,排列出消费总金额前100名的用户?

典型的topK算法问题,自己参考:
https://www.cnblogs.com/xudong-bupt/archive/2013/03/20/2971262.html

因为算法复杂度是NlnN,所以,10亿数据,运算量相当于遍历一遍,只要你内存够大,处理器够快。比如运算能力200G~1T的Xeon E5,完全可以在1秒内做完。

思路:取前100个数据组成一个列表,然后排序,依次遍历后面的数据,比第100个数据小的不用管,比第100个数据大的插入该列表中,并删除最后一个元素。