可伸縮NoSQL數據庫的五條建議
Bigstep’s Full Metal Cloud 公司的產品經理 Alex Bordei 分享了他們在 NoSQL 使用上關于可伸縮性的經驗。Alex 給出了如下五條建議:
- 永遠不要假設規模是線性增長的。雖然硬件是可伸縮的,但軟件并不能百分百地能利用硬件資源,卻需要為這些用不到的硬件資源買單。因而,Alex 建議要尋找到硬件成本與硬件能力的切合點。下圖展示了水平伸縮與垂直伸縮方面的性價比趨勢:
- 相信測試而非文檔。Alex 告誡說,不要信任供應商的文檔,雖然研讀這些文檔非常有用,但最好還是基于自己系統的情況對 NoSQL 進行測試。由于虛擬化和云技術使得搭建平臺變得非常容易,因此不要找借口說沒條件進行測試。
- 體察細節:內存與 CPU 的度量數據。尤其對于內存數據庫而言,內存的性能直接影響著數據庫的性能。CPU 的指標同樣需要引起重視。只有準確地獲得這些硬件資源的使用效率,才能將錢花在刀刃上。
- 不要忽略網絡延遲。只要數據庫是分布式的,必然需要占據網絡帶寬。無論是節點之間的通信,還是對數據建立副本,網絡延遲以及吞吐量都直接制約著整個系統的性能。如果網速太慢,即使內存與 CPU 再好,對系統性能的改善也是杯水車薪。
- 不要對 NoSQL 數據庫做虛擬化。虛擬化是個好東西,但也得量力而為。由于它會影響到內存訪問速度,而這一點對于 NoSQL 數據庫而言卻又至為關鍵。根據 Alex 的觀察,對比虛擬環境,運行在純硬件環境上的管理程序性能要提示 400% 左右。
感謝郭蕾對本文的審校。
來自: InfoQ
<span id="shareA4" class="fl">
</span>
</div>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!