3

我正在创建一个像 twitter 这样的应用程序。

我被困在一个点上。
我将所有推文与用户个人资料一起存储。

现在我必须创建一种算法,以更好地提高性能,以计算整个应用程序中所有用户中最流行的词。

作为我的外行方法:

  1. 点击完整的数据库
  2. 搜索重复出现的词
  3. 为重复出现的单词创建记录
  4. 跟踪说 1000 个最经常出现的单词

但是在大型应用程序上,这对我来说似乎很重

任何人都可以提出一些更好的方法吗?

4

1 回答 1

0

您可能只想检索过去一小时或一天左右的帖子,而不是整个数据库

您应该过滤掉非常常见的单词,例如100 个最常见的英语单词- 您不希望“the”成为热门词

同样,我建议您在每个帖子中只计算一次单词,因此带有“booger booger booger booger booger”的帖子和带有“booger”的帖子都可以视为只有一个单词“booger”的实例

如果您不需要知道精确的字数,那么您可以通过扫描最新帖子的随机样本来凑合,例如其中的 10%

如果您可以使用分而治之的方法,那么这将有助于加快速度

于 2013-07-01T14:05:18.357 回答