1. 程式人生 > >分布式存儲系統架構設計,應該遵循什麽樣的原則?

分布式存儲系統架構設計,應該遵循什麽樣的原則?

不可 功能 故障恢復 硬盤 獨立 實現 存儲系統 技術 本質

分布式存儲系統架構設計,應該遵循什麽樣的原則?

 分布式存儲系統,本質是將數據分散存儲在多臺獨立的x86設備上。傳統的網絡存儲系統通常采用集中的存儲服務器存放數據,存儲服務器很容易成為系統性能的瓶頸,也容易成為可靠性和安全性的瓶頸。分布式存儲系統采用可擴展的系統結構,利用多臺x86服務器分擔存儲負荷,利用位置服務器定位存儲信息,不但提高了系統的可靠性、可用性和存儲讀寫效率,還易於擴展。

傳統架構VS分布式架構

技術分享圖片

分布式架構I/O

分布式存儲系統架構設計核心原則

1.分布式、無共享架構

 采用基於策略的分布式哈希表數據路由算法,使得客戶端無需查找元數據節點,通過計算就能直接尋址到數據所在的存儲節點,大大縮短了數據IO訪問路徑,提升了系統性能。

 同時,整個系統也無集中管理和控制節點,每一個數據節點都有能力承擔另一數據節點的功能,節點之間通過內部高效的分布式協議完成相互協作和通信。這種去中心化、無狀態的全分布式數據處理架構是系統實現水平、線性擴展能力的關鍵,有力確保整個系統無單點故障,無性能瓶頸。

2.全冗余可靠性設計

 實際硬件環境中,磁盤可能損壞,服務器可能宕機,網絡可能失效……為處理這些不可預期的硬件故障,保證數據的完整性和業務的可用性,需要通過全冗余設計等一系列軟件層面的設計,來彌補硬件不可靠帶來的數據可靠性和可用性問題。

 分布式存儲采用了多副本冗余機制,基於策略配置,實現數據及其副本跨硬盤、跨存儲節點、跨機架的存儲,並通過強一致性復制技術確保各個數據副本的一致性,這樣即便一個數據服務器甚至整個機架停機也完全不影響數據可靠性和可用性。

3.塊存儲優化

 分布式存儲的架構和數據路徑完全為一個塊存儲系統而設計和優化,擁有如下特性:讀寫操作流程都非常簡單,以盡可能少占用資源;采用強一致性復制協議保證數據多副本的完整性和一致性;充分利用SSD的高性能特點,通過智能緩存算法,將熱數據緩存到快速的SSD中,以應對隨機 I/O 訪問;除了支持私有客戶端訪問接口,也支持業界標準的iSCSI和SCSI塊訪問接口,使得應用可以無縫切換到分布式存儲系統。

4.自動化管理運維

 分布式存儲設計的另一大目標就是簡化數據中心存儲系統的運維,從安裝部署、日常維護、故障恢復等都力爭做到全自動化。分布式存儲集群做到了設備自動發現、自動安裝,只需簡單配置20分鐘內完成整個系統的安裝部署;當硬盤損壞,數據可靠性降低時,會觸發自動修復功能,將數據快速復制到正常的節點,整個過程無需人工參與。分布式存儲做到了全自動化擴容,自動發現和添加新增節點,自動數據復制,自動負載均衡等功能。

分布式存儲系統架構設計,應該遵循什麽樣的原則?