分页大量数据

时间:2015-03-01 21:32:09

标签: mysql performance count pagination

某些搜索结果非常常见,例如分页,通常会显示总页数,结果等...

两个例子:

Google - https://www.google.com.br/?gfe_rd=cr&ei=h4PzVLy3JMiU8QeE3ICYBQ&gws_rd=ssl#safe=off&q=test - 大约26.7亿条结果(0.39秒)

Stackoverflow - https://stackoverflow.com/search?q=test - 1,561,211结果

例如,Google假设数据库中找到了这些26.7亿个结果。正如在不影响性能的情况下计算具有多个结果的查询的总结果一样?这有什么神奇之处?

1 个答案:

答案 0 :(得分:0)

“约26.7亿条结果(0.39秒)” - 注意“大约”一词。这打开了大门,让它在几乎0.00秒内完成计数。例子:

  • 每晚做一些事情
  • 统计样本
  • 有汇总表

“1,561,211结果”,另一方面'听起来'就像一个确切的计数。但这可能是一个“陈旧”的结果。我刷新了那几页;价值没有改变。这让我相信他们真的算了,但随后将结果缓存了一段时间。 Memcached可能是这种缓存的嫌疑。

(无疑还有其他的交易技巧。)