亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

mysql - 千萬(wàn)資料 分頁(yè),當(dāng)偏移量 原來(lái)越大時(shí),怎麼優(yōu)化速度
伊謝爾倫
伊謝爾倫 2017-05-18 10:48:01
0
2
1004

以mysql為例,一般資料量比較大的時(shí)候,分頁(yè)的話,偏移量約大,查詢效率越低,

例如有某個(gè)貼文有200萬(wàn)個(gè)評(píng)論,每頁(yè)顯示10條,就有20萬(wàn)頁(yè), 當(dāng)取20萬(wàn)頁(yè),數(shù)據(jù)該怎麼處理呢,有什麼好的方法可以解決這種需求呢,

實(shí)例:網(wǎng)易音樂(lè),單一歌曲最大評(píng)論數(shù)有140多萬(wàn),分頁(yè)速度處理的很好的,

伊謝爾倫
伊謝爾倫

小伙看你根骨奇佳,潛力無(wú)限,來(lái)學(xué)PHP伐。

全部回覆(2)
給我你的懷抱

第一我相信網(wǎng)易音樂(lè)讀取資料的方式絕對(duì)是使用nosql,去讀取資料。
當(dāng)然假如你的資料表存取頻率不高的話,還是可以直接讀取資料庫(kù),當(dāng)然mysql innodb庫(kù)有個(gè)坑爹的弱點(diǎn),就是你查詢頁(yè)數(shù)越大,所以的效果就越小。所以一般我們是透過(guò)id去提高查詢的效果
舊的查詢用法 limit 100000,10 建議查詢用法 where id > 100000 limit 10。這樣可以保證到索引的使用。
當(dāng)然你可以使用分錶的形式,降低單表數(shù)據(jù),從而提高查詢效率

PHPzhong

如果用redis的化應(yīng)該是將id都存在list中,然後利用redis取得list的某個(gè)片段,然後拿片段裡的ID到mysql去查詢結(jié)果。

當(dāng)然如果你要加上排序的話就沒(méi)轍了。

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板