MySQL數據庫擴展小記

很多大規模的站點基本上都經歷了從簡單主從複製到垂直分區,再到水平分區的步驟,這是一個必然的成長過程。


1 主從複製、讀寫分離(R/W Splitting)


將應用程序中對數據庫的寫操作指向主服務器,而將讀操作指向從服務器。從服務器定時向主服務器請求最新日誌,主服務器異步將二進制日誌輸送給從服務器。


而應用程序與多臺數據庫之間,可以通過MySQL Proxy反向代理解耦。應用程序只需要跟MySQL Proxy 通信即可,而讀寫分離的工作都由MySQL Proxy 來完成,與此同時,

MySQL Proxy 還對多個從服務器實現負載均衡以及可用性檢測。




2 垂直分區


將相關度不大的數據庫分佈到不同的服務器上。需要時,可以對各個分區進行讀寫分離,主從複製。


3 水平分區(Sharding)


可以將同一數據表中的記錄通過哈希算法、範圍、或是映射關係等算法進行分離,分別保存在不同的數據表中,從而可
以部署在不同的數據庫服務器上。



開源產品Spock Proxy幫助應用程序實現水平分區的訪問調度。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章