mysql - 千万数据 分页,当偏移量 原来越大时,怎么优化速度
伊谢尔伦
伊谢尔伦 2017-05-18 10:48:01
[MySQL讨论组]

以mysql为例,一般数据量比较大的时候,分页的话,偏移量约大,查询效率越低,

比如有某个帖子有200万评论,每页显示10条,就有20万页, 当取20万页,数据该怎么处理呢,有什么好的方法可以解决这种 需求呢,

实例: 网易音乐,单个歌曲最大评论数有140多万,分页速度处理的很好的,

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(2)
给我你的怀抱

第一我相信網易音樂讀取數據的方式絕對是使用nosql,去讀取數據。
當然假如你的數據表訪問頻率不高的話,還是可以直接讀取數據庫,當然mysql innodb庫有個坑爹的弱點,就是你查詢頁數越大,所以的效果就越小。所以一般我們是通過id去提高查詢的效果
舊的查詢用法 limit 100000,10 建議查詢用法 where id > 100000 limit 10。這樣可以保證到索引的使用。
當然你可以使用分錶的形式,降低單表數據,從而提高查詢效率

PHPz

如果用redis的化应该是将id都存在list中,然后利用redis获得list的某个片段,然后拿片段里的ID到mysql去查询结果。

当然如果你要加上排序的话就没辙了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号