欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql 數據量 查詢,如何設計一個能夠高效查詢的千萬級MySQL數據庫

傅智翔2年前21瀏覽0評論
mysql 數據量 查詢,如何設計一個能夠高效查詢的千萬級MySQL數據庫?

首先要確定你的目標,所謂千萬級是每秒千萬次查詢還是千萬條記錄的數據庫,前者是一個極其復雜的,這個不是光告mysql能解決的,我想不是前者,而后者卻是很簡單的一件事,前提是定義高效,定義兩個指標:

1,每秒查詢的次數是多少

2,每次查詢時長

確定好以后再考慮以下幾個因素的優化

1,存儲的類型,SSD比普通磁盤的隨機讀寫能力可以提高不少,一般2到3個數量級,還要看索引和數據塊的大小,比較復雜

2,先擇RAID類型,如果選raid 0和raid10可以提升近似1倍的速度

3,使用高帶寬的網速,可以減少網絡傳輸延遲,用10g的光纖比1g的電纜理論上可以提升1個數量級的吞吐量,尤其對大數據據量的結果集特別有效

4,合理的索引,帶條件的檢索字段加上索引

5,用大寬表,盡可能減少多表關聯查詢,用空間換時間吧

6,釆用主從的集群,基本上查詢的并發量和服務器的數量成正比的

7,使用緩存,如memcached,尤其對靜態數據提升尤其明顯

8,合理選擇數據庫字段的類型,用定長字字,不要用變長的,如定長的int,char,decimal類型,別用varchar,text等

9,給數據庫配置更大的內存

10,檢查下瓶頸在不在CPU,如果查詢復雜,換個更高配置的服務器

總的原剛就是,盡可能用內存替代碰盤提升IO速度,提高網絡和CPU的配置以減少查詢時間;盡可能提升網絡速度,內存和主機的數量以提高并發