请问一下topk问题中的topk DB schema是怎么样的,可以用简单的key value DB,key是timestamp value是 a list of songs这种吗?
Top10 music 场景里面,table 只要存这个10首歌就行了,怎么存都行。数据库里 id 0-9, 各对应一首歌最简单。
谢谢老师,那如果周期会有变化呢?比如他是一个参数,我想知道最近一分钟的top10,又想知道最近5分钟的top10.应该怎么存呢?或者说我想知道任意(starttime,endtime)的top10,这个要怎么办呢?
我能想到就是存time stamp + 这个timestamp的 top10,然后搜出来算某个时间段的top10.这样可以吗?timestamp是1分钟的
这样是不准确的,有的歌可能每分钟都没进前十,但是加起来一个小时就进前十了。所以会变化的话,就只能现场计算再Cache。我觉得实际产品里一般不会有变化周期的需求。
嗯 是不准确的,但是我看很多题目是这样要求的
如果题目要求准确 top10 的话,又要求任意开始和结束时间的话,就只能现场算了再 Cache