這好像是全球首次:公開與獨立地評估比較對象存儲與基于硬盤驅動器(HDD)塊的SAN(存儲局域網)的性能。對象存儲供應商Scality,評估方是技術分析公司ESG,后者發現Scality的Ring的性能媲美(如果不是更好的話)高性能文件和SAN存儲陣列。
對象存儲的基本理念是將非基于塊的數據存儲為對象,同時對象在存儲空間的地址和數據完整性是基于一個處理二進制內容的數學哈希表。對象存儲不需要文件/目錄系統。對象存儲供應商認為文件/目錄系統在存儲數十億計的文件的時候會變得緩慢而無效率。不過,ESG評注道:“過去對象存儲的劣勢在于性能,它的數據索取通常要慢于文件系統。”
Scality的Ring是一個可擴展對象存儲系統,由X86節點組成,這些節點在自我修復的方式下存儲數據并在邏輯上組成一個環。服務器上的應用程序則請求一個對象讀取訪問(get)或寫入一個對象(put)。在讀取情形下,如果對象不在受到請求的節點上,一個10節點環只要1個跳躍(hop)就能找到對象。如果是10個以上100個節點以下的環,則需要2個跳躍。如果是100個以上1000個節點以下的環,則需要3個跳躍。
ESG表示Scality的Ring“在許多小文件的情形下使用并行負荷并提供高I/O,為大型文件提供高吞吐率,同時配有傳統上只有高端SAN才有的功能——復制功能和校驗碼下的數據持續性、地理冗余度、快照、自動分層等。”
該報告分析了Ring的管理性以及它從主機硬件組件(比如一個節點)恢復數據的能力,同時還分析了它的實際性能。我們這里只看一下它的性能測試。
Scality Ring性能
首先,ESG觀察了Ring的對象訪問,包括讀取和寫入。一個36個邏輯節點的3服務器環的環每秒可以提供2.6274萬個對象寫入和4.1573萬個對象讀取的性能。
在寫入這方面,ESG寫道:“對于基于對象的存儲解決方案來說,在一個3節點系統上每秒寫入2.6274萬個對象是一個優秀的結果,相比于行業領先的基于塊的雙控制器磁盤陣列的每秒I/O新更難,這可以說是非常好的結果了。”
這聽起來好像在說Ring的速度要快于傳統SAN陣列,但該報告實際上沒有這么說。同時,ESG只測試了至多6個服務器的節點,因此我們不知道100節點或500個節點的Ring會如何表現。
[page]
ESG的Scality Ring響應時間圖
如上圖所示,ESG測試了響應時間。這張圖上我們可以看到,3節點的Ring在一個對象的讀取/寫入/刪除上只需要不到5毫秒的時間:“ESG實驗 室確認對象讀取/寫入/刪除的響應時間不超過7.05毫秒——10倍于傳統架構的性能——同時隨著更多的節點加入到RING,整體性能還在提升。”
它表示:“Scality Ring的響應時間和傳統的基于塊的磁盤陣列比起來是優秀的,同時比ESG實驗室測試過的其他基于對象的存儲系統都要快很多。”
Ring的擴展
通過在每個服務器節點上使用6個存儲設備并將邏輯上將它們分區成兩個設備,ESG將Ring從3服務器節點和36邏輯節點擴展到5服務器節點和60 邏輯節點,發現性能直線上升,從每秒4.1573萬個對象讀取上升到每秒6.0410萬個對象讀取,在24服務器節點環(288個邏輯節點)上預計每秒可 以讀取38.5萬個對象。
ESG表示:“隨著每個服務器節點加入Scality Ring,系統可以使用新服務器的CPU、磁盤、總線和網絡資源,因此總體性能得到提升。一個利用最新英特爾服務器CPU和SSD技術的基于對于對象的Scality Ring可以用于創建一個基于對象的存儲解決方案,同時這個對象存儲解決方案的性能可以超過傳統基于塊的磁盤陣列的性能。”
ESG同時還發現一個5服務器節點環可以在128Kb/秒比特流速率下同時傳輸21.1424萬個MP3音頻文件。這相當于26.43GB/秒的輸出水平。ESG表示這個性能“可以媲美高性能計算系統”。
作為佐證。我們的記錄顯示一個DataDirect Networks SFA10K-X的4U單元60驅動器機箱每個機架提供17GB/秒的吞吐率。一個Panasas PAS 2陣列每個機架提供15GB/秒的吞吐率。Scality Ring確實做得很好。
所有這些數字看起來都很好。在我們研究ESG測試設置的時候,我們感到很好奇。