影響資料庫的效能因素
1.超高的qps和tps:
(1)qps:每秒查詢率(query per second)
每秒查詢率qps是對乙個特定的查詢伺服器在規定時間內所處理流量多少的衡量標準。即每秒的響應請求數,也即是最大吞吐能力。
(2)tps:每秒事務處理量(transaction per second)
每秒鐘系統能夠處理的交易或事務的數量。它是衡量系統處理能力的重要指標。
2.大量的併發和超高的cpu使用率:
(1)大量的併發:資料庫連線數佔滿(max_connections預設100)。
(2)超高的cpu使用率:因cpu資源耗盡而出現宕機。
3.磁碟io:
(1)磁碟io效能突然下降(使用更快的磁碟裝置)。
(2)其他大量消耗磁碟效能計畫任務(調整計畫任務,做好磁碟維護)。
4.網絡卡流量(網絡卡被佔滿(1000mb/s)):
如何避免無法連線資料庫情況:
(1)減少從伺服器的數量
(2)進行分級快取
(3)避免使用select進行查詢
(4)分離業務**和服務**
5.大表問題(記錄行數巨大,單錶超過千萬行;表資料檔案巨大,表資料檔案超過10g):
(1)大表對查詢的影響:
慢查詢:很難在一定時間內過濾出所需要的而資料。
(2)大表對ddl(資料庫定義語言:create table/view/index/syn/cluster)操作的影響:
建立索引需要很長時間;
風險:mysql版本<5.5建立索引會鎖表;mysql版本》=5.5 雖然不會鎖表,會造成主從延遲。
(3)修改表結構需要長時間鎖表:會造成長時間的主從延遲;影響正常的資料操作。
(4)如何處理資料庫中的大表:
分庫分表把一張大表分成多個小表。難點:分表主鍵的選擇;分表跨分割槽資料的查詢和統計。
大表的歷史資料分檔(減少對前後端業務的影響)。難點:歸檔時間的選擇;如何進行歸檔。
6.大事務帶來的影響:
事務是資料庫系統區分其他一切檔案系統的重要特徵之一;
事務特性:(1)原子性;(2)一致性;(3)隔離性:sql標準中定義的四種隔離級別:未提交讀;已提交讀(預設隔離級別,不可重複讀);可重複讀;可序列化;併發性由高到低,隔離性由低到高(4)永續性
大事務:執行時間長,操作的資料比較多的事務(例餘額寶);
造成風險:鎖定太多的資料,造成大量的阻塞和鎖超時;回滾時所需時間比較長;執行時間長,造成主從延遲。
處理大事務注意:避免一次性處理太多資料;移出不必要的事務中的select操作。
影響資料庫效能的因素
論壇上的資料庫愛好者們,對於資料庫底層的各種細節,內幕,等待事件,隱藏引數等津津樂道,對於調整好一條sql語句使之在查詢優化器 查詢引擎下能高效能運轉具有巨大的滿足感成功感,彷彿自己掌握了天下最有價值的真理,駕馭了天下最有難度的技術。但對於設計和開發出這個資料庫系統的人來說,他們看到此情此景,只好躲...
影響資料庫的效能的因素
1 sql 查詢的速度 2 伺服器硬體 3 網絡卡流量 4 磁碟io 系統吞度量要素 乙個系統的吞度量 承壓能力 與request對cpu的消耗 外部介面 io等等緊密關聯。單個reqeust 對cpu消耗越高,外部系統介面 io影響速度越慢,系統吞吐能力越低,反之越高。系統吞吐量幾個重要引數 qp...
影響資料庫的因素
1.sql查詢速度 2.伺服器硬體 3.網絡卡流量 4.磁碟io 超高的qps和tps的風險 效率低下的sql 大量的併發風險 資料庫連線數被沾滿 max connections預設100,引數改的大一些 超高的cpu使用率 cpu資源耗盡而宕機 磁碟io 磁碟io效能突然下降 通過使用更快磁碟裝置...