您好,登錄后才能下訂單哦!
小編給大家分享一下數據庫系統應怎么實現負載平衡,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
數據庫系統應如何負載平衡
通常沒有人在作數據庫的Load Balance,即便做的話,只是把它當熱切換器而已。
如果數據量大到一臺數據庫無法負擔,考慮拆Database的時候,首要考慮數據的同步該如何處理。
在做數據庫多臺并行前,要先確定數據一致性需要多高,如果可以容忍有時間差的同步,可以考慮用Big Table架構的數據庫來進行處理,否則就是加快取吧,并且盡量把數據庫讀/寫的任務分散來做。
理論上講,合理的作法應該是要組成Database Cluster才對。在Cluster的環境中,Database主機可以有很多臺,但是大家的后端都接到同一個外部存儲器(通常是SAN),所有主機都 寫入同一個存儲器內的一個數據庫而已,也因為只有一個存儲器、一個數據庫,所以主機之間沒有同步的需要。
數據庫系統應如何負載平衡
負載平衡設備是不能解決數據庫負載過重的問題,但Databse Server性能不足的原因很多,應詳細探究為何性能不足,架Database Cluster能解決部分問題,但不一定能帶來太大性能上的改進。
拆Table結構是一個方法,通常是用在數據量特大的Table才建議,但用這種方式,程序開發人員一定會很痛苦,如果真要采取這種架構,建議程序架構 要多一層數據存取層,商業物件不能直接下SQL存取數據庫數據,要通過數據存取層元件來存取數據庫數據,才能避免程序工程師的人為錯誤。
建議是先分析數據庫性能瓶頸,再來決定架構。根據經驗,Disk I/O是最大的問題,而造成Disk I/O的原因,通常是Index沒設好,或是程序設計師撰寫的SQL指令,沒考慮到數據增長后的性能問題。這些問題都排除后,再考慮數據庫的備份或鏡像, 將復雜的查詢指令、BI報表及Data Mining的數據來源,指向備份或鏡像出來的那臺Database主機,這樣應該就可以解決你的問題。
看完了這篇文章,相信你對“數據庫系統應怎么實現負載平衡”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。