返回信息流从数据库读取数据时,如果有100万条记录,你会怎么做?
全部读出来吗?
晕~~~~,别傻了!没有人会去浏览100页以后的内容。
所以,面对100万条记录,其实你只要 Select Top 1000 就足够了!对,just select Top 1000 。如果你不放心,大不了 Select Top 2000 ,可别太实心眼了, 直接把100万条全读了,那也忒实在了,不过你的这种实在是有代价的,呵呵。
举两个例子:google和百度。
甭管查询结果有多少记录,哪怕有上千万条,它可以用来显示和翻页的,仅仅1000条记录左右,再往后翻页就是错误信息或提示信息。
比如用 google 查询 sql 关键字,共有223,000,000项符合sql的查询结果(2亿多条),而只显示到88页记录,最后一页显示如下信息 ------
为了提供最相关的结果,我们省略了与已显示的 873 个类似的条目。
根据您的意愿,可将省略的结果纳入搜索范围后再重新搜索。
据当地法律法规和政策,部分搜索结果未予显示。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
你现在明白为啥 google那么快了吧???
--------------------------------------------------------------------------
性能的提高,不但要研究技术算法,还要研究使用者心理!
100%的用户,在翻页到50页以内,如果还找不到结果,就会换一个关键字,重新搜索,而不会固执的一直在那里翻页。
95%的用户,在前10页内找不到内容,马上就会换新关键字重新搜索!
如果查询出100万条记录,你就老老实实的读出100万记录,你就造成了超巨的数据浪费!
可别做这样的傻事!
这是一条镜像帖。来源:北邮人论坛 / search-engine / #6996同步于 2008/5/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SearchEngine机器人发帖
性能的提高,不但要研究技术算法,还要研究使用者心理!
bluebear
2008/5/22镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
百度也很快啊。。
【 在 bluebear 的大作中提到: 】
: 从数据库读取数据时,如果有100万条记录,你会怎么做?
: 全部读出来吗?
: 晕~~~~,别傻了!没有人会去浏览100页以后的内容。
: ...................
小聪明啊
【 在 bluebear (bluebear) 的大作中提到: 】
: 从数据库读取数据时,如果有100万条记录,你会怎么做?
: 全部读出来吗?
: 晕~~~~,别傻了!没有人会去浏览100页以后的内容。
: ...................