海量數據存儲
GS9200系列分布式存儲采用存儲服務器集群的方式來滿足海量數據的存儲需求,大量的存儲服務器構成的一個分布式的虛擬化存儲池,能夠為應用提供單卷EB級別的存儲容量。所有的應用客戶端都可以共享訪問虛擬化存儲池中的數據,能夠很好的保證應用系統數據的一致性,且存儲池中的資源可以按照應用性能和容量需求進行動態的彈性分配。
海量文件高效檢索
應用平臺中,大量應用的持續運行會產生海量的數據,海量的數據不僅僅意味著容量的增長,也會帶來大量的文件數量增長。為了滿足應用平臺的長期發展,集群存儲系統必須要能夠高效存儲管理足夠多的文件數量。集群存儲系統采用元數據服務器集群的方式來滿足海量文件數量的存儲需求以及海量文件數量帶來的元數據性能需求,可支撐單卷2千億以上文件的快速檢索需求。
元數據服務器集群中,元數據最大可擴展至128臺,采用兩兩互備的形式提供訪問,且集群中所有的元數據服務器都是對等的,元數據均衡地存放在所有的元數據服務器中。完全對等的元數據服務器集群架構使得每臺元數據服務器都能夠同時提供服務,突破了傳統單元數據服務器架構對文件數量的限制以及存儲服務能力的限制。
在元數據服務器中,所有的元數據都是存放在永久性存儲區中,只有頻繁訪問的活躍性元數據才會在緩存中駐留,所有的元數據內容更新都會及時地刷新到永久性存儲區中。上述的元數據存儲方式在滿足元數據服務器單元數據存儲能力的同時也提高了單個元數據服務器的服務能力,即使整個平臺突然斷電也不會發生數據的丟失,甚至從而導致整個存儲平臺的崩潰。
元數據服務器集群是以內置的負載均衡機制來共同維護一個統一的名字空間,元數據的存儲負載和訪問負載都均勻地分布到各個元數據服務器上。元數據集群之上存在一個虛擬層,客戶端在訪問時可通過此虛擬層確定元數據存在于那臺物理元數據節點上,所有元數據訪問一步定位,無須中間代理轉發。
高并發訪問
在數據讀取的過程中,元數據信息是采用隨機讀取的形式進行的,數據信息是采用順序讀取的形式進行,當高并發訪問時,隨機讀取與順序讀取的同時進行會對服務器以至于整個文件系統造成很大的壓力,造成并發訪問性能低下。
GS9200文件系統是采用數據通道與元數據通道分離的形式實現,且元數據服務器與數據存儲服務器可動態進行擴容,從而加大元數據服務器檢索能力,與數據傳輸的性能,也就是說在高并發訪問情況發生時,元數據服務器可迅速的檢索到數據元數據信息,然后讓數據存儲端與訪問端直接建立數據通道,進行并發數據讀取,從而提升高并發訪問效率。
GS9200的元數據可根據元數據服務器內存大小將熱點的元數據盡量多地駐留在內存中,提升元數據訪問的效率,同時得益于現在固態硬盤的發展,元數據在緩存中不命中的情況下也可以極高的帶寬提供元數據查詢服務。
實際應用中,十臺元數據服務器的吞吐率可超過數十萬文件/秒,且此值不是元數據極限值,只是根據應用實際環境得到的一個檢測時的最高值。
高數據讀寫性能
整個集群存儲系統是一個帶外模式的IO訪問架構,客戶端訪問存儲系統模型如下圖所示,數據通道和元數據通道完全分開,所有的數據讀寫都直接在Client(客戶端)和iStore(存儲服務器)之間進行,整個IO架構不存在任何單點性能限制。
存儲服務器集群中所有的存儲服務器都同時提供IO服務,能夠向應用服務器提供GByte/s級的聚合IO帶寬,能夠滿足云計算平臺中大量的應用服務器同時訪問存儲系統帶來的性能需求。
集群存儲系統的雙集群模式(元數據服務器集群和存儲服務器集群)使得整個存儲平臺在架構上沒有任何性能瓶頸,能夠提供超過100GByte/s的聚合IO帶寬以及1000萬次以上的IOPS(每秒讀寫次數)。
動態在線擴展
集群存儲系統中的元數據服務器集群和存儲服務器集群都可以在線動態擴展。
存儲服務器集群的擴展包括存儲服務器數量和存儲服務器中磁盤數量的擴展,存儲服務器集群的擴展帶來的是容量上的增長,在擴展過程中無需中斷存儲系統上應用的運行,擴展的容量即插即用。而且隨著存儲服務器數量的增多,整套集群存儲系統的聚合帶寬也會線性的增長。
元數據服務器集群的擴展帶來的是文件數量存儲能力的增長,整個擴展過程對整個應用平臺完全透明,擴展的元數據服務器即刻能夠提供服務,前端應用無需進行任何配置。隨著元數據服務器數量的增多,整套集群存儲系統所提供的元數據服務能力也會呈線性增長,能夠管理的文件總個數也線性增加。
高可靠性
在集群存儲系統設計中,假設任何硬件設備都是不可靠的,集群存儲系統的可靠性不依賴任何硬件設備來實現,在集群存儲系統中任何元數據服務器、存儲服務器、磁盤以及網絡設備的失效都不影響集群存儲系統的穩定運行。
數據動態遷移
隨著應用平臺的持續運行和擴展,集群存儲系統也需要進行不斷的擴展。擴展帶來了一個問題,新添加的存儲服務器中沒有任何的數據,而原有的存儲服務器空間利用率卻維持在一個較高的狀態,此時集群存儲系統只能在新添加的存儲服務器上為數據分配空間,從而導致整個集群存儲系統的寫入性能不能得到有效提升。為此需要在系統擴容后可以將原有存儲服務器上的一部分數據動態的遷移到新添加的存儲服務器中,直到整個存儲服務器集群的空間利用率都達到一個相同的狀態。
在進行數據動態遷移過程中前端應用無需停止服務,而且數據動態遷移過程對前端的應用服務器是完全透明的,從而在擴容的同時也提高了整個平臺的IO效率。數據動態遷移過程可以隨時中斷,用戶可以在前端應用負載較高的情況下將數據遷移過程停止,在合適的時間重新啟動數據動態遷移任務,數據動態遷移任務將繼續進行。
數據動態遷移的實現還帶來一個好處,存儲系統可以籍此替換老舊的過保硬件。管理員可以將一臺存儲服務器上的數據動態遷移到剩余的完好存儲服務器上,在數據遷移完成之后即可在集群存儲系統中刪除此存儲服務器。借助數據動態遷移功能集群存儲系統可以有效安全的撤除老舊設備,從而在線更新集群存儲系統中的所有的硬件。從上述可以得到,集群存儲系統可以確保云存儲系統持續不斷地運行下去,并進行自我更新,實現可伸縮性綠色節能。
數據隔離與交互
存儲平臺是一個公共的服務平臺,存儲系統需要在共享訪問的基礎上減少不同應用之間的相互干擾。在這里,GS9200系列分布式存儲可以讓不同的應用掛載到集群存儲系統中不同的子目錄下,這樣既滿足了同一應用不同服務器之間的共享訪問需求,又隔離了不同應用的數據。這樣的數據隔離是邏輯上的隔離,各應用在相互隔離的情況下還能夠共享集群存儲系統的剩余空間和整體IO性能,無需將集群存儲系統像SAN系統那樣分割成多個小塊,在滿足需求的同時也簡化了整個存儲平臺的管理,且linu可動態的對此目錄進行容量設置。
文件系統POSI接口兼容
為了廣泛支持各種現有的應用和方面構建新的應用系統,GS9200系列分布式存儲采用POSI接口作為應用訪問接口。POSI接口是一個廣泛應用于各個操作系統的一個API規范,采用POSI接口作為集群存儲系統的訪問方式能夠滿足應用領域中多樣化的應用系統訪問存儲系統的兼容性。POSI也是一個應用廣泛的編程模型,現有的應用可以無縫的遷移到應用平臺上。
文件系統和對象存儲互通
GS9200支持提供全面的S3對象存儲接口能力,同時還支持文件系統和對象存儲實現數據互通的功能。
為了融合兩種場景,GS9200在對象系統里面加入了存儲池的概念,對象的存儲池分為不同的類型(普通、FS),租戶基于存儲池創建bucket,該bucket訪問方式取決于bucket歸屬的存儲池的模式。
業務和存儲融合運行能力
GS9200存儲系統具備在自身的存儲節點之上運行相關業務系統(比如WebServer、流媒體、高性能計算、虛擬化)的能力,實現業務程序和存儲系統在同一批物理服務器中融合運行的模式。
GS9200的融合運行模式能夠大幅度降低構建成本和日常的運維管理工作難度,真正實現在擴展計算能力或者存儲能力按需擴展。
秒級的快照功能
GS9200實現了秒級的ROW方式快照,具有以下幾個特點:
ROW方式的快照,沒有寫放大
對數據寫入性能沒有影響
支持大量快照并存
基于切片的快照,快照顆粒度小,空間占用小。
快照功能可為文件或者卷創建多達無限數量的基于增量的歷史時間點拷貝。當發生數據“軟”故障,比如軟件程序導致的數據損壞、病毒破壞、意外刪除等,可以通過對合適的時間點標記進行“回滾”來快速恢復數據。該功能特別適用于關鍵性業務的連續數據保護。