從SPC-1測試報告中截選出每款存儲系統相對重要(所占大頭)的部件參考價格,其中沒有包含服務。筆者感覺最“給力”的Oracle Sun ZFS 7420c,其實就是2臺定制的Sun Fire X4470服務器,每控制器配置4顆Intel Xeon X7550八核心2.0GHz CPU,一共128條8GB 1066MHz DDR3內存(每控制器512GB),8個2.5英寸512GB SATA SSD讀閃存加速(可能是eMLC或者MLC NAND)和8個3.5英寸SLC SAS-1 SSD寫閃存加速(容量和具體用途我們將在下文交代)。

上表中的部分內容和名詞,到了介紹對應產品時自然會具體解釋。當然筆者在本文還有很多想要和大家交流的地方,比如說通過SPC-1測試報告中的結構 圖和配置信息,來簡單分析每一款存儲系統的硬件設計。我們也會補充其它方面的資料,結合筆者以前積累的經驗。其中部分內容在存儲行業資深人士看來可能有些 班門弄斧,某種程度上帶有一定產品技術普及的目的。

另外,最近我也收到了來自一些同行中肯的意見反饋:比如SPC-1結果無法全面反映出存儲系統各種配置下的性能、以及附帶/支持的軟件功能等價值。 因此,筆者在比較不同型號陣列時,也會相應的提到統一存儲、自動分層存儲、SSD緩存、存儲虛擬化、Scale-out橫向擴展、壓縮/重復數據刪除等方 面的高級技術特性。希望能夠讓讀者對產品有一個更全面了解。

我們曾經提到了空間利用率與每驅動器IOPS之間的微妙關系,而“每驅動器IOPS×空間利用率×2”是一個僅供參考的數字,其目的是排除未用存儲容量(短擊硬盤?)對性能測試可能帶來的影響。

在后面的幾頁中,筆者將分別討論5款各具特點的中端存儲系統。涉及的話題包括x86架構控制器、存儲虛擬化技術的不同形式、自動分層存儲應用現狀分析、形形色色的SSD緩存加速等。

NetApp FAS3270:統一存儲+FlashCache

NetApp FAS3270A運行SPC-1測試配置的參考示意圖

NetApp FAS系列統一存儲和V系列網關都能同時提供SAN和NAS文件協議訪問的支持,曾經有一段時間NetApp幾乎就是NAS的代名詞,IBM OEM自NetApp的N系列產品幾乎就是當作NAS來賣。還有人認為NetApp在WAFL文件系統的基礎上“模擬”塊存儲設備,其效率可能不如純粹的 SAN陣列。不過從FAS3270A的SPC-1測試結果來看,如今對于NetApp中端存儲系統的這種顧慮基本可以打消了。

其實任何RAID陣列的數據分塊(Stripe)方式,應該都需要有基本的元數據或者映射表,文件系統的索引也屬于這種形式。在此借用一位業內朋友的話:“當LUN從樹上下來開始直立行走的時候,才發現其實文件系統早就變成人了。”

NetApp FAS3270A SPC-1測試配置

如上圖,NetApp FAS3270A統一存儲系統的2個控制器位于單一的3U機箱內,還有一種2個兩個機箱各安裝一個控制器和IOXM(I/O擴展模塊)的HA配置形式。每個控制器帶有16GB內存(總共32GB)、6MB二級緩存的CPU、512GB FlashCache閃存卡(一共1024GB,用于讀緩存),運行NetApp FAS/V系列產品通用的Data ONTAP 8.0.1版本操作系統。

NetApp FAS3270A的控制器機箱的2種配置方式:上面那個為3U機箱內安裝一個控制器和IOXM,實現HA配置需要再增加一個機箱;下面的圖在一個機箱中實現了2個控制器的HA配置,但沒有I/O擴展模塊。

FAS3270A分別使用2條6Gb SAS后端連接(miniSAS x4,帶寬2.4GB/s)訪問后端級聯的5臺DS3424驅動器架(擴展柜)–每個DS4243里滿配24塊3.5英寸300GB 15K RPM高轉速SAS硬盤??刂破髑岸藙t各有2個4Gb/s光纖通道接口(可選8Gb FC)經過2臺博科300 FC交換機的冗余存儲網絡配置連接到2臺服務器。

NetApp Flash Cache (PAM II) PCIe閃存卡,硬件上類似于Fusion-io,安裝在外置存儲系統中使其具備服務器主機共享的讀緩存加速功能。Fusion-io的“PCIe SSD”雖然可以實現更低的訪問延時,不過被其收購的ioTurbine軟件(以及由它組成的ioCache方案)是在一臺服務器的Windows虛擬機之間共享SSD緩存。

FAS3270A使用120個驅動器的SPC IOPS測試結果為68,034.63,不知繼續增加驅動器數量性能會有什么樣的提升(最多支持960個),當然也有人關注EMC CLARiiON CX4-960/VNX的這個方面。NetApp高容量利用率的RAID DP(雙校驗盤,類似于RAID 6)卻能夠達到本次測試最高的每驅動器IOPS效率,我們認為除了WAFL(Write Anywhere File Layout,寫任意文件布局)文件系統重定向隨機寫操作之外,Flash Cache對于隨機讀的貢獻應該最大,當然也因此帶來了成本的上升。

注:據了解NetApp現在出貨的高端產品FAS6200系列,應該是免費贈送512GB的PAM II閃存卡。

盡管NetApp官方資料中并沒有公布其陣列使用的CPU型號,但是通過《2011存儲Benchmark盤點,意義何在?》一文提到的 SPECsfs2008網絡文件系統IOPS測試報告,我們查詢到FAS3270使用了Intel Xeon E5240雙核處理器,每控制器2顆(一共4顆),這與上面SPC-1配置中的6MB L2 Cache是一致的。

FAS3270在NetApp FAS3200系列中規格最高,作為一款在2010年下半年發布的產品,仍然使用至強5400平臺似乎有點陳舊,而且2顆Xeon 5200系列CPU的性能才相當于一顆5400四核處理器。相對于FAS6200系列使用的Xeon 5500平臺相比,FAS3200更像是在FAS3100基礎上的一個小幅升級。另一方面,也可以看出相比那些用于計算的服務器來說,存儲系統對CPU的要求并不是很高。

IBM V7000:虛擬化、自動分層存儲普及難?

IBM Storwize V7000運行SPC-1測試配置的參考示意圖

Storwize V7000 Unified是IBM這款產品現在的正式名稱,因為在去年10月增加了可選的File Module(文件模塊)即NAS網關之后,V7000也成為一款統一存儲。

上圖給我們的第一感覺有點抽象,看起來是2個Storwize V7000節點(其實就是2個控制器,見下文說明),各自通過2條6Gb SAS(同樣是miniSAS x4)與后端10個包含24塊硬盤的單元連接;前端使用每節點4個8Gb/s FC接口經由2個光纖通道交換機連接到2塊雙端口FC HBA卡。而圖片下方的文字解釋有點容易讓人產生誤解。

IBM Storwize V7000 SPC-1測試配置

這里的雙節點集群,指的是V7000控制機箱中的兩個控制器,每個控制器帶有8GB內存/緩存。Storwize V7000上面的8Gb/s光纖通道接口既可以連接主機,也可以(經過FC交換機)連接其它存儲系統,因為V7000的軟件系統使用了SVC SAN存儲虛擬化核心代碼。因此該產品是一款具備存儲虛擬化功能的FC+iSCSI陣列。

9個驅動器擴展機箱與控制機箱之間的連接方式見下圖:

Storwize V7000增加擴展柜按照右側一列文字從1到9的順序,下方5個由藍色示意線級聯的擴展柜屬于SAS Chain(鏈路) 1,控制機箱和上面使用綠色示意線級聯的4個擴展柜屬于SAS Chain 2,SPC-1測試配置的每個機箱中都裝滿了2.5英寸300GB 10K RPM SAS驅動器。

IBM Storwize V7000控制器結構示意圖

上圖是IBM V7000單個控制器的結構示意圖,其中使用了一顆代號為Jasper Forest的Intel Xeon C5500/3500系列四核2.1GHz CPU(應該是實際頻率2.13GHz的Intel Xeon EC3539)。

IBM Storwize V7000軟件模塊示意圖

Storwize V7000號稱集IBM存儲技術之大成。上面綠色部分為來自SVC(SAN Volume Controller)已有的I/O堆棧,并在二款產品之間通用;藍色部分為來自DS8000 DA Adapter的RAID代碼;粉色部分包括針對V7000硬件組件編寫的新Firmware,以及從XIV“Scale-out網格存儲”移植過來的圖形用戶界面。

當然還有最初應用在IBM System Storage DS8700高端陣列上的Easy Tier自動分層存儲技術。V7000目前支持SSD和HDD兩個性能層級,也就是說如果有不同轉速的機械硬盤都會被當作同一個分層來處理,而現在 DS8800的Easy Tier已經可以支持3個分層。

本文涉及的5款產品中,IBM V7000是唯一支持自動分層存儲的。同樣屬于將熱點數據放在固態存儲上優化性能并節約成本的技術,我們看到SSD緩存技術應用越來越多,而自動分層存儲 技術的應用似乎沒有當初預料的那樣多。究其原因,筆者認為首先是閃存存儲技術還不完全成熟,特別是由其自身結構帶來的寫入性能和壽命問題,SLC NAND的情況相對好一些,eMLC和MLC現階段主要適合于以隨機讀為主的應用。其次是實現的復雜度,SSD作為緩存不基本需要用戶進行設置就能實現比 較理想的效果,自動分層則必須有一個數據遷移策略,并允許用戶對其規則進行定制;而且讀緩存在閃存單元失效的情況下也不會丟失數據,而自動分層存儲則需要 考慮SSD模塊的冗余高可用,現在流行的RAID 1(10)保護方式又使其邏輯容量減半。

還有一點,就是存儲系統的定位和處理能力。我們在這里暫時先不談全閃存陣列,當前的高端陣列IBM DS8800、EMC Symmetrix VMAX、HDS VSP和惠普3PAR都有各家的自動分層存儲功能,這個前提是存儲系統能夠發揮出一定數量SSD的性能,而且購買相應設備的用戶愿意支付這個成本。以自動 分層存儲技術見長的Compellent就不是推薦所有的用戶選擇SSD,在不同轉速驅動器、RAID級別甚至硬盤內/外圈分層都有各自的應用價值。 3PAR V800配置1,920塊HDD創造45萬SPC-1 IOPS紀錄并不讓我感到意外,因為以前他們是一家比較務實的公司,在宣傳自動分層存儲技術時并沒有一味強調性能,而是在同樣性能水平降低30%的成本。 這仍是絕大多數傳統磁盤陣列的現狀。

IBM Storwize V7000 Unified統一存儲組成示意圖

V7000 Unified的NAS網關“基于GPFS近20年在分布式文件領域的技術”,可以說相當于在SONAS基礎上簡化而來。這一對File Module(文件模塊)中是不包含寫緩存的,這樣的好處是不需要像戴爾EqualLogic FS7500等統一存儲那樣使用UPS或者電池等來保護DRAM中的數據,另外在Active/Active雙節點高可用的實現上省去了對寫緩存進行一致性鏡像。缺點是文件系統服務器不對寫入數據進行緩存加速處理。

Storwize V7000發布時支持240個驅動器(加入雙節點集群功能之后一共480塊盤),SPC-1 IOPS測試在中端陣列中沒有明顯的亮點,不過這款產品集成的功能還是比較豐富的。

Pillar Axiom 600:緩存/RAID分離式Scale-out

Pillar Data Systems在被Oracle收購之前是一家由甲骨文CEO Larry Elison持有的私人公司,如今其產品線仍然保持著和Sun ZFS 7000系列相對獨立的特點,因此本文也將對它們單獨進行分析。

Pillar Axiom 600 Series 3運行SPC-1測試配置的參考示意圖

上圖說明中的2個Pillar Axiom Slammer控制器,與兩個機柜中間的4個控制器機箱似乎有點矛盾?而通過來自不同控制器節點的8個8Gb/s FC連接到光纖通道交換機,卻只使用服務器上的一塊雙端口HBA卡運行測試負載,恰恰是Scale-out橫向擴展存儲系統特征的表現(實際應用往往會連接不只一臺服務器)。

Pillar Axiom 600 Series 3測試配置

這里的QLogic QLA2462 8Gb FC HBA又一次出現了筆誤(應該是QLA2562,前面那張圖是正確的)。Pillar Axiom 600的雙控制器(即Slammer)被稱為active/active data mover,每控制器24GB緩存一共48GB.測試系統分別有8個8Gb/s FC和8個4Gb/s FC接口用于前、后端連接(總共各有16個),經過配置的所有驅動器都可以被每一個控制器上的每一個后端連接訪問。

“FC RAID Brick”是Pillar Axiom 600專用的陣列驅動器擴展柜,根據名稱可以看出底層的RAID功能在它上面實現,而不僅僅是簡單的JBOD連接。除了2U 12盤位的FC Brick之外,還有2U 13盤位的

SATA Brick和SSD Brick(其中都包含一個熱備盤)可選。每個Brick兩個“RAID adapter”指的就是雙活動配置的RAID控制器(注意:這個與Slammer控制器不同)。26個FC Brick滿配一共312個300GB 15K RPM驅動器是一種優化的配置,具體原因我們稍后就會交待。

Pillar Axiom Slammer規格表

Pillar Axiom的Slammer一共有四種版本:SAN(4/8Gb FC主機接口)、iSCSI(1GbE主機接口)、NAS(1/10GbE主機接口)和iSCSI Combo(1GbE + 4/8Gb FC主機接口)。我們理解NAS Slammer的功能就像帶有文件系統NAS網關,而另外3款則與IBM SVC那樣的(存儲虛擬化)卷管理器有相似之處,為什么這樣說呢?

Pillar Axiom 600能夠支持4個Slammer橫向擴展,即最多8個存儲控制器單元。根據每控制器24GB緩存容量判斷應該是Intel Xeon 5500/5600系列4核處理器(3或6通道內存?)。Slammer一共有6個10/100Mb以太網接口用于和Pilot管理節點的通信;26個 2Gb或4Gb FC接口針對Brick后端連接,應該也包括Slammer之間的通信。

Pillar Axiom 600在一個系統中最多支持64個Brick,也就是他們所說的128個可以獨立并發工作的RAID控制器。在SPC-1測試中配置26個Brick,估 計是為了與Slammer的26個后端連接相對應,超出這個數量之后帶寬理論上無法增加。不過筆者覺得,繼續增加硬盤應該是可以提高IOPS性能的。

上圖為以點對點方式互連的Pillar分布式RAID,與傳統的雙RAID控制器通過菊花鏈形式級連JBOD擴展柜的對比示意圖。Pillar的 RAID功能在后端的每個Brick上實現,因此前端的Slammer主要負責存儲池/文件系統)的緩存加速;而傳統雙控制器陣列的緩存和RAID功能都 要在控制器上進行。按照這個原理,Pillar的成本和性能應該會更高,而且Slammer和Brick都屬于Scale-out擴展方式。那為什么 Axiom 600 Series 3在SPC-1測試中表現一般呢?

第一種可能:前面的測試配置參考示意圖,以及配置表中的前/后端各16個FC連接(使用了其中8個),應該表示該存儲系統配置了最多數量的4個 Slammer(8個控制器單元);而2個Slammer Controller和48GB total緩存的文字說明好像只有一個Slammer;本文第一頁的價格表中又是2個8Gb FC SAN Slammer.到底應該以哪個為準呢?

第二種可能:即優化不足。Pillar沒有提到為Slammer搭配了UPS等斷電數據保護組件,那么也許它們的Cache只是讀緩存,寫入數據時經過Slammer到Brick反而會增加延時。當然這只是我們的一種推測。

IBM SVC(SAN卷控制器)6節點集群 + 2套DS8700運行SPC-1測試配置的參考示意圖

使用6個IBM SVC存儲虛擬化節點(3對高可用)在2套滿配1024塊硬盤的DS8700陣列前端,運行SPC-1測試結果達到曾經創紀錄的38萬IOPS,而在只是將SVC減少到4個節點其它都不變的情況下,性能就下降到31.5萬SPC-1 IOPS.SVC對性能提升的秘訣就在于緩存,而且每個節點捆綁一臺UPS能夠保護寫緩存中的數據在斷電時不會丟失。

根據上圖中的連接情況,數據從DS8700經過FC交換機到達SVC之后,還要再次經過FC交換機才能到達服務器主機,存儲網絡結構會比沒有SVC時更為復雜。這是因為SVC上的光纖通道接口兼具連接前端主機和后端被虛擬化陣列的功能。

相比之下,盡管Pillar Axiom 600的Slammer和Brick之間也需要交換機,但Slammer的前后端FC卻是獨立的,Slammer、Brick分別有點像存儲虛擬化設備及其后端連接的陣列,只是二者是專門打包在一起的產品,增加Slammer就像增加SVC節點那樣來提高性能。

Pillar Axiom 600現在屬于Oracle的存儲產品線的一員,再加上他們以前的淵源,具備專門針對Oracle數據庫的混合列式壓縮(Hybrid Columnar Compression)功能不足為奇。理論上說,在上面運行這種應用能夠比其它廠商的產品節約空間,同時可能提升性能,后面會介紹到的Sun ZFS 7420統一存儲也是如此。

華賽S5600T:高性價比的x86雙控陣列

華為賽門鐵克Oceanspace S5600T運行SPC-1測試配置的參考示意圖

華為賽門鐵克Oceanspace S5600T測試配置

華賽S5600T應該屬于Intel Xeon服務器平臺的雙控制器存儲系統。其實本文前面談到的NetApp FAS3270也是如此,與IBM Storwize V7000之類采用SBB Form Factor結構設計的陣列相比,由于控制器的空間較大,因此可以選擇功耗高一些的CPU,而且內存容量處于明顯優勢。

S5600T配置252個驅動器的SPC-1 IOPS測試結果為102,471.66,而華賽另一款定位更高的中端陣列S6800T配置368個驅動器(都不是滿配)的SPC-1 IOPS為150,061.17。在沒有使用SSD緩存的情況下就實現了較高的每驅動器IOPS,可能與DRAM緩存算法的優化有關。

華賽S5600T的特點大致包括TurboModule高密度I/O模塊及熱插拔設計(PCIe擴展卡)、TurboBoost三級性能加速技術 –包括Intel CPU睿頻加速和SmartCache動態數據緩存技術(使用自家的SSD)等??傊畱撚胁簧偃顺姓J華為系公司不缺乏技術,但價格或許才是他們真正的殺手锏。

Sun ZFS 7420c:至強7500、1TB內存、SSD緩存

Oracle Sun ZFS Storage 7420c運行SPC-1測試配置的參考示意圖

Oracle Sun ZFS Storage 7420c測試配置

Sun ZFS 7420的一大亮點是每控制器配置了512GB的大容量緩存/內存,遠遠超過本次對比的另外4款中端陣列。該統一存儲運行了Solaris ZFS文件系統,并使用8個512GB SSD作為讀緩存,還有8個73GB相對小容量的寫緩存SSD應該是用于文件系統的ZIL(ZFS intent log)日志。

參與SPC-1測試的7420是Oracle Sun ZFS Storage Appliance系列產品中定位最高的一款,除了剛剛提到過的內存容量,每控制器支持四顆6核1.86GHz或者8核2.0GHz Intel Xeon處理器一看就是至強7500系列。如此高的硬件配置讓我們有些驚訝,有這個必要嗎?

經過對5款產品的分析,可以發現Intel Xeon平臺控制器、前端主機接口使用8Gb/s FC和后端通過6Gb/s SAS連接驅動器已經成為主流。除了NetApp FAS3270控制器板載的光纖通道接口仍為4Gb/s(可選8Gb/s FC HBA卡),Pillar Axiom 600的RAID功能位于后端的Brick上屬于例外。

我們再看看Sun ZFS統一存儲的軟件特性。文件訪問協議支持NFS v2/v3/v4(pNFS)和CIFS等,塊存儲協議除了iSCSI和光纖通道之外,還有不多見的IP over Infiniband和RDMA over Infiniband。Oracle使用ZFS文件系統提供了4種級別的數據壓縮和Inline(線內)塊級重復數據刪除。強大的CPU計算能力和大容量內存用于數據比對的歷史緩沖區,在未來出現的支持壓縮/去重等主存儲數據精簡技術的設備中可能會成為一種趨勢。

在這個示意圖的最右端,Sun ZFS 7420c的SPC-1測試配置有34,811GB的未用存儲容量,因此其空間利用率(即總ASU容量在物理容量中所占比例)僅有28.22%。這應該與ZFS文件系統無關,而可能是人為(短擊硬盤)提高IOPS性能所致。

Sun ZFS 7420c在如此“堆硬件”的情況下,使用280個驅動器運行SPC-1測試結果為137,066.20 IOPS.盡管其每驅動器IOPS僅次于NetApp FAS3270A在本次對比中位居第二,不過考慮到磁盤鏡像之后的空間利用率僅有28.22%(華賽S5600T為45.38%),這個性能效率數字或許又打了一定的折扣??磥泶鎯ο到y的緩存也不見得是越大越好,尤其是像Sun 7420這樣內存容量已經達到高端陣列水平的產品。

未經允許不得轉載:存儲在線-存儲專業媒體 » 全面了解:五款各具特點的中端存儲系統
分享到

wangzhen

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走