09.06 業務突增負載性能難保證?華為雲支招:從根本上解決問題

隨著企業的發展,數據也隨之在不斷增長。這就對數據庫系統提出了很高的要求:

既要在性能上滿足業務的需要,還要在存儲容量上滿足數據的日益增長。

作為文檔數據庫一哥,MongoDB 一直以來被開發者和企業所青睞,以具有強可擴展性和優秀的讀寫性能著稱。但是,在長時間的使用過程中,MongoDB 擴容時性能欠缺的缺點逐漸顯現出來,成為企業的一塊心病。

2017年的 MongoDB 年終大會上,來自雲之家的 DBA 分享了一段個人經歷:在一次對存儲有 150T 數據的 MongoDB 數據庫擴容中,耗時接近一個月。

市場千變萬化,歷時一月的數據庫擴容,不知中途是否趕上業務高峰期,但在眼下互聯網業務盛行、機遇說來就來的當口,一月時間發生的變化,可能性太多。在各種小時級甚至分鐘級概念層次不窮的今天,為什麼 MongoDB 的擴容,會耗時那麼久呢?

真相是什麼?

究其原因,MongoDB 擴容之所以需要較長時間,與其採用三副本架構有很大關係。該數據庫存儲數據使用的本地文件系統,每一個 shard 節點之間的數據是相對獨立的。當擴容時,需將已有節點的數據同步均衡;由於數據獨立存在,所以要對數據進行網絡拷貝。

業務突增負載性能難保證?華為雲支招:從根本上解決問題


MongoDB 三副本架構

也因此,MongoDB 擴容後的性能並不能立即得到提升,這在很大程度上限制了MongoDB 的使用場景範圍。

你可能會提出一個問題,網絡拷貝也不至於速度如此之慢吧?事實是,數據拷貝對節點資源消耗很大,出於對整體性能的考慮,MongoDB 限制了數據遷移的速度。

業務突增負載性能難保證?華為雲支招:從根本上解決問題

MongoDB 擴容示意圖

世界總是如此,任何事物都不完美,但辦法總比問題多。因此要想從根本上解決 MongoDB 數據庫數據遷移慢的問題,就需要從架構上做調整。

正本清源:從根本上解決問題

上面提到,MongoDB 各 shard 節點之間數據是相對獨立的。那麼,如果現在數據相對於計算節點來說並非私有,而是共享,節點擴容是否就可以省去數據遷移步驟,進而大大縮短擴容時間呢?

答案是肯定的。華為雲 MongoDB 社區增強版正是這一假設的踐行者。

華為雲 MongoDB 社區增強版是華為雲文檔數據庫 DDS 推出的 Cloud Native 文檔數據庫服務。完全兼容 MongoDB 協議,使用計算儲存分離架構,在讀寫、擴容能力、備份恢復性能、故障容忍等方面對比 MongoDB 社區版有質的突破。

華為雲 MongoDB 社區增強版打破現有架構約束,將 MongoDB 數據庫節點無狀態化,去掉數據強歸屬於某一計算節點的限制,將計算和存儲相分離,數據可靠性交由底層共享存儲系統來保證,從根本上解決了數據遷移慢的問題。

業務突增負載性能難保證?華為雲支招:從根本上解決問題


傳統 MongoDB 架構 & 華為雲 MongoDB 社區增強版架構

計算節點無狀態化

由於計算和存儲的分離,副本集不再需要,華為雲 MongoDB 社區增強版將 Shard 副本集替換為單節點 Shard,單節點 Shard 在運行中並不保存和命令請求相關的信息,每次命令請求都和以前沒有任何關係,命令執行完成,返回結果後,沒有任何痕跡。這樣以來,可以很方便的被替換掉(或集群、橫向擴展)而不用狀態重建(或同步)。

節點擴容

華為雲 MongoDB 社區增強版在擴容時,將拉起一個新的單節點 Shard 添加到集群,由於數據是共享的,只需要在邏輯層面設置被接管數據的路徑即可,新節點在指定的路徑下加載完對應數據後,就能對外提供服務,整個過程可以在分鐘級完成,同等條件下擴容性能提升了百倍以上,可以輕鬆應對業務突增帶來的負載性能問題。

業務突增負載性能難保證?華為雲支招:從根本上解決問題


華為雲 MongoDB 社區增強版擴容示意圖

Cloud Native 文檔數據庫,極高性價比

華為雲 MongoDB 社區增強版的架構升級,包括了計算(分片)、存儲(分佈式存儲池)分離、每個計算節點(分片)互為主備關係、允許 N-1 個計算節點(分片)故障、集群高效平緩的橫向擴展、更有利磁盤擴容的分佈式存儲池等特點,在同等成本下,數據庫整體性能和可用性都得到大幅提升。

業務突增負載性能難保證?華為雲支招:從根本上解決問題

在該架構下,華為雲 MongoDB 社區增強版相較社區版的彈性擴容能力提升了 100 倍故障重構能力和備份恢復性能提升10倍、讀寫性能提升 300%!

https://activity.huaweicloud.com/dfv_mongo/index.html?utm_source=jinritoutiao&utm_medium=sm&utm_content=dfv_0820


分享到:


相關文章: