可伸縮NoSQL資料庫的五條建議

infoq發表於2014-09-28

  Bigstep’s Full Metal Cloud公司的產品經理Alex Bordei分享了他們在NoSQL使用上關於可伸縮性的經驗。Alex給出瞭如下五條建議:

  1、永遠不要假設規模是線性增長的。雖然硬體是可伸縮的,但軟體並不能百分百地能利用硬體資源,卻需要為這些用不到的硬體資源買單。因而,Alex建議要尋找到硬體成本與硬體能力的切合點。下圖展示了水平伸縮與垂直伸縮方面的價效比趨勢:

可伸縮NoSQL資料庫的五條建議

  2、相信測試而非文件。Alex告誡說,不要信任供應商的文件,雖然研讀這些文件非常有用,但最好還是基於自己系統的情況對NoSQL進行測試。由於虛擬化和雲技術使得搭建平臺變得非常容易,因此不要找藉口說沒條件進行測試。

  3、體察細節:記憶體與CPU的度量資料。尤其對於記憶體資料庫而言,記憶體的效能直接影響著資料庫的效能。CPU的指標同樣需要引起重視。只有準確地獲得這些硬體資源的使用效率,才能將錢花在刀刃上。

  4、不要忽略網路延遲。只要資料庫是分散式的,必然需要佔據網路頻寬。無論是節點之間的通訊,還是對資料建立副本,網路延遲以及吞吐量都直接制約著整個系統的效能。如果網速太慢,即使記憶體與CPU再好,對系統效能的改善也是杯水車薪。

  5、不要對NoSQL資料庫做虛擬化。虛擬化是個好東西,但也得量力而為。由於它會影響到記憶體訪問速度,而這一點對於NoSQL資料庫而言卻又至為關鍵。根據Alex的觀察,對比虛擬環境,執行在純硬體環境上的管理程式效能要提示400%左右。

相關文章