首頁  >  文章  >  資料庫  >  介紹幾種Mysql多字段大表的最佳化方法

介紹幾種Mysql多字段大表的最佳化方法

零下一度
零下一度原創
2017-04-22 15:07:441065瀏覽

有一個大數據表,有30個字段,int  varchar text 字段都有,1000W+數據,每天都會增加,經常搜尋的字段有10個,這個怎麼優化?

請教了一個人,才得到差不多的答案,感覺這種問題有點假,現實中基本上不會出這種問題吧?

優化方案:
主從同步+讀寫分離:
這個表在有設備條件的情況下,讀寫分離,這樣能減少很多壓力,而且資料穩定性也能提高

縱向分錶:
根據原則,每個表最多不要超過5個索引,縱向分割字段,將部分字段拆到一個新表

通常我們會依照以下原則進行垂直拆分:(先區分這個表中的冷熱資料欄位)
把不常用的欄位單獨放在一張表;
textblob等大字段拆分出來放在附表中;
經常組合查詢的列放在一張表中;

缺點是:很多邏輯需要重寫,帶來很大的工作量。

利用表格分割區:
這個是推薦的一個解決方案,不會帶來重寫邏輯等,可以根據時間來進行表格分割區,相當於在同一個磁碟上,表格的資料存在不同的資料夾內,能夠大幅的提高查詢速度。

橫向分錶:
1000W條資料不少的,會帶來一些運維壓力,備份的時候,單表備份所需時間會很長,所以可以根據伺服器硬體條件進行水平分錶,每個表有多少資料為準。

有不好的地方,請指點一下,謝謝。

以上是介紹幾種Mysql多字段大表的最佳化方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn