[Tweet] Hashtag 排序问题

上课说 tweet hashtag这个是内存型存储 我理解是按每条tweet做shard类似document-base 那每次搜以后 把所有机器的查询结果都汇总一下 然后再做o(nlog(n))的排序?
1.不知道这个理解对不对? 这样排序会不会很慢?
2. 如果符合要求的数据量很大 汇总的机器放不下怎么办?

谢谢

  1. tweet 按照 hashtag 来查询的话,需要做 reverse index,就是会生成 posting list,这个 posting list 可以是按照时间排序好的。
  2. posting list 按照 document-based partition,O(n) 时间可以把多个按时间排序的链表整个成一整个按时间排序的链表。

课件说 Twitter Hashtag Search 是用 内存 而 Google search 是用内存+ 硬盘 为什么Twitter用内存就可以呢?

因为数据量级更小