西瓜哥 發(fā)表于:13年11月25日 00:52 [原創(chuàng)] DOIT.com.cn
存儲在線專欄文章:上周EMC正式推出XtremIO全閃存陣列,我看微博上各路大V吐槽的很多,有說性能不行的,有說定長重刪不行的,有說不適合數(shù)據(jù)庫,只適合VDI場景的。西瓜哥也很關(guān)心EMC怎么定位XtremIO和VMAX的關(guān)系,因為很多網(wǎng)友認為全閃存集群以后必然代替高端存儲的,高端存儲總有一天要滅亡的。
XtremIO由來自包括IBM、NetApp和VMware公司的IT老兵成立于2009年,又是一個以色列公司。2012年5月被EMC收購,據(jù)說收購價是4.3億美元。收購后EMC一直沒有正式推出產(chǎn)品,只是在部分客戶哪里試用。直到上周,EMC正式宣布,XtremIO全閃存陣列GA(general availability)了。
我們先來了解一下這個存儲,看看EMC收購它看重它哪一點?
XtremIO是一個集群的Scale out全閃存系統(tǒng),因此我們先看一下XtremIO的基本單位X-Brick,西瓜哥俗一點,就叫X磚好了。這塊磚頭是包含2個1U的標準的X86機架服務器,上面安裝了XtremIO的操作系統(tǒng)XIOS,作為存儲的控制器;另外每個磚頭帶有一個2U的25盤位的磁盤框,據(jù)說就是采用VNX一樣的DAE,目前支持2.5"的6G SAS SSD eMLC磁盤,容量是400GB;為了保護Cache的數(shù)據(jù),每個磚頭還配置了一個1U的BBU做掉電保護。
也就是每塊磚是5U,10TB裸容量。如果最小配置,只配置一塊磚頭的話,由于BBU成為了單點故障,因此,XtremIO要求多配置一個BBU,也就是第一個磚頭是6U高,以后都是5U高。目前GA的版本最大支持4個X磚,也就是21U,半個機柜的樣子。西瓜哥一直搞不清楚為什么配置多個磚頭,第一個磚頭還需要多一個BBU,可能這樣固化下來,銷售起來不容易出錯,反正銷售記住第一個磚頭必須配置兩個BBU就可以了。
這種外置BBU的設計還是太占空間了,EMC的VNX2除了VNX8000外,都把BBU內(nèi)置在控制器里面了,據(jù)說以后XtremIO也要改,只是不知道為啥那么慢。
我們看一下每塊磚頭的規(guī)格:
集群需要增加2個InfiniBand交換機:
我們看到,主機接口支持8G FC和10GE iSCSI,但節(jié)點之間的互連采用了40G infiniBand技術(shù):
InfiBand RDMA(Remote Direct Memory Access)可以實現(xiàn)跨節(jié)點間的內(nèi)存訪問,并且具有最低的時延(7us)。
請大家看一下X磚頭的性能指標,在50%讀50%情況下,只有15萬IOPS,在閃存陣列里好像并不突出?
大家再看一下其他的接口速率,好像也不是目前最高的?FC目前16G很多廠商都支持了,SAS已經(jīng)有12G的SAS盤了,以太網(wǎng)也已經(jīng)有40G了,而InfiniBand也有56G的了,好像XtremIO在性能甚至接口這塊都沒有啥亮點?那么EMC為啥要購買XtremIO呢?
從硬件的架構(gòu)上我們完全看不出這4.3億美金的價值,只能從軟件去看了。
我們來看看這個值4.3億美金的XIOS的架構(gòu):
從相關(guān)資料分析,每個控制器上有一個基本的linux分布式操作系統(tǒng),然后上面跑這個XIOS。
XIOS的核心,西瓜哥認為就是重刪技術(shù),大家把XtremIO的重刪原理搞清楚了,就知道這4.3億美金是否值了。
我們來看一下XtremIO的重刪原理,其實不復雜,只是一個4KB的定長重刪:
比如一個32KB的I/O進來,XtremIO切分為定長的4KB的數(shù)據(jù)塊:
然后用hash計算每個數(shù)據(jù)塊的指紋,據(jù)說是SHA-1算法:
指紋一樣的就只保留一份數(shù)據(jù)。EMC沒有提到如果指紋一樣,是否還需要比較一下數(shù)據(jù),因為指紋也有可能沖突的,NETAPP好像就強調(diào)它不會直接重刪,而是對數(shù)據(jù)進行比較,確信數(shù)據(jù)是重復的:
看到這,我們發(fā)現(xiàn),好像也很簡單啊,不值4.3億美金。
別急,我們再往下看。
我們看一下重刪在各個控制器的分布情況情況。由于XtremIO是基于指紋來進行數(shù)據(jù)分布的,因此可以保證數(shù)據(jù)平均分配到每個控制器上:
后面的數(shù)據(jù)進來后,都會平均分布到各個控制器上:
當每個控制器寫滿一個條帶的時候,數(shù)據(jù)才落到SSD中:
大家看到?jīng)]有,XtremIO的重刪全部在內(nèi)存里面完成的。落盤的數(shù)據(jù)都是重刪后的數(shù)據(jù)。這個就擺脫了傳統(tǒng)的重刪帶來的性能瓶頸,不會成為全閃存陣列的短木板。EMC說雖然是定長重刪,但實際效果可以做到3:1-10:1。
再有一個,XtremIO所有的元數(shù)據(jù)都放內(nèi)存里,這些元數(shù)據(jù)包括LBA和指紋的映射,指紋和SSD物理地址的映射。進一步提高了系統(tǒng)處理的性能。EMC宣傳,其性能是線性增長的,即4塊磚頭的集群相當于1個磚頭的性能的4倍,而且由于采用InfiniBand技術(shù),時延全部控制在1ms以內(nèi)。因為每一個RDMA的操作時延只有7us,對系統(tǒng)幾乎沒有影響:
由于在讀Cache內(nèi)也是重刪后的數(shù)據(jù),因此,雖然XtremIO的Cache并不是最大的,但乘以重刪系數(shù),相當放大了Cache的尺寸。
這些元數(shù)據(jù)都在內(nèi)存里,因此,XtremIO實現(xiàn)快照、復制和Thin都非常簡單,速度也非常快,因為這些操作都不涉及和磁盤打交道,只是在內(nèi)存里進行元數(shù)據(jù)的復制和修改。
XtremIO還有另外一個提高利用率的法寶,叫XtremIO Data Protection (XDP),它拋棄了傳統(tǒng)的RAID,提高了磁盤的利用率。XDP宣傳可以達到92%的數(shù)據(jù)利用率,可靠性和RAID 6差不多,但性能超過RAID 1。關(guān)鍵是原數(shù)據(jù)都在內(nèi)存了,因此沒有寫放到和讀放大,有效提高了SSD盤的壽命:
具體XDP怎么工作。西瓜哥的理解就是這樣的,每塊磚有25個SSD硬盤,把這些硬盤切成相同的chunk(從圖中看出就是4KB大。捎妙愃芌AID 6一樣的算法,水平方向計算一次校驗,對角線方向計算一次校驗。其實可以理解為N+2糾刪碼的一種實現(xiàn):
這樣看來,有效容量可不是23/25嗎?當然,XDP類似華為RAID 2.0一樣,不會采用熱備盤做熱備,而是保留熱備空間就可以了。XDP一般建議保留1塊盤的熱備空間。在重構(gòu)方面,XDP沒有采用傳統(tǒng)的RAID 6重構(gòu)算法,把條帶的數(shù)據(jù)讀出來,而只是需要讀需要的數(shù)據(jù)(利用P和Q的數(shù)據(jù)),因此讀的數(shù)據(jù)比較少(不過EMC沒有具體公布這個算法,西瓜哥的數(shù)學是語文老師教的,因此沒太看懂這個):
XDP號稱支持最多每塊磚壞5塊盤,當然不是同時的啦。每塊盤重構(gòu)的時間基本都在10分鐘以內(nèi)。重構(gòu)對性能影響比較少。大家有興趣我們下周再來分享XDP的測試數(shù)據(jù)。
XtremIO也號稱是第一款支持VAAI的全閃存陣列(這個應該不是,華為的DORADO好像就支持)。由于它采用元數(shù)據(jù)常駐內(nèi)存,并且有兩階段元數(shù)據(jù)(即LBA和指紋的映射,指紋和磁盤物理地址的映射),因此,VAAI的full copy復制應該就類似打個快照一樣的快:
當然,一個方便管理的圖形化界面是必須的:
XtremIO也支持RESTful API,第三方這邊可以控制和管理這個陣列。
由于XtremIO這種獨特的軟件架構(gòu),因此,用戶不需要性能調(diào)優(yōu)。沒有RIAD,沒有分層,不能控制重刪(必須打開),數(shù)據(jù)平均分布,沒有調(diào)優(yōu)的必要。
XtremIO是一個對稱多活的架構(gòu),直接利用EMC的PowerPath多路徑軟件。同時,XtremIO并不支持遠程復制,因此,在方案需要和EMC的VPLEX來配合實現(xiàn),但如果需要CDP功能,還可以加recoverpoint,但XtremIO沒有內(nèi)置I/O分量器,I/O必須從VPLEX上分離:
XtremIO的集群原理上可以支持更多,我看原來老的規(guī)格是可以支持8塊磚16控的:
但GA發(fā)布的時候只是4塊磚8控的產(chǎn)品,也許EMC認為8控就夠了,因為超過100萬IOPS的場景沒有看到,也許是16控的測試不夠充分,還需要再測測。
好了,我們大概了解了XtremIO后,我們發(fā)現(xiàn),它好像在硬件和性能方面都不太突出?比如我們前面講過的Kaminario K2,人家就追求性能第一,一直保持SPC-1的世界記錄,而XtremIO,既然是全閃存陣列,你不追求性能還有啥存在的價值?
但看完XtremIO的發(fā)布會(EMC現(xiàn)在的發(fā)布會的形式都很新穎,都是多個場地互動,一個場地是技術(shù)專家談原理,一個場地是現(xiàn)場DEMO演示,一個場地是客戶現(xiàn)身說法,和拍電視一樣一樣的)和相關(guān)的一些資料,西瓜哥突然明白了,XtremIO追求的是一種平衡:
不用最快的硬件,夠用就好;
不追求最快的性能,滿足現(xiàn)在客戶的要求就夠;
采用eMLC降低單位容量的成本;
采用XDP和重刪技術(shù),提高磁盤的有效空間,也相當減低了單位數(shù)據(jù)的成本
因此,我感覺XtremIO就是實用主義者啊。SSD盤貴吧,CPU計算成本便宜,那么采用XDP和dedup都是非常耗CPU資源的,XtremIO走的是一條利用計算換容量的路啊。每個技術(shù)拿出來,都不是最有殺傷力的,比如In-memory元數(shù)據(jù),人家SAP HANA更加出名對吧,XDP實現(xiàn)N+2保護,糾刪碼都可以做到啊,定長重刪效果還不如變長重刪呢。但XtremIO把握得很好,把這些技術(shù)巧妙地應用到全閃存陣列中來,走出和其他閃存廠商不同的差異化道路,這個應該就是4.3億美金的價值吧。
因此,西瓜哥認為,XtremIO有一種東方的哲學,追求各方面的平衡,而不是性能突出。也許和其CTO是華人有關(guān)吧,O(∩_∩)O哈哈~
這種平衡其實也是高端存儲看重的,高端存儲你不能僅僅有性能,可靠性更重要,而且售后服務也很重要。
XtremIO如果還是一個初創(chuàng)公司,估計對高端存儲沒有太多威脅,用戶不會把最核心的數(shù)據(jù)存放在一個隨時沒有了的公司的產(chǎn)品上,但現(xiàn)在被EMC收購了,感覺對高端存儲形成了比較大的威脅,好在EMC也有高端存儲,我們來看看EMC的自己的定位。
這個是EMC收購XtremIO的時候流傳出來的圖,大家可以看到,XtremIO定位在性能優(yōu)化和容量優(yōu)化的頂點,而且那個面積畫得比VMAX還大,可見EMC對XtremIO的期望還是非常大的:
看EMC的評論,說如果能夠區(qū)分冷熱數(shù)據(jù)的話,就用VMAX,如果不能區(qū)分的,就用XtremIO。這個應該就是他們目前暫時的定位區(qū)別。但VNX2-F如何定位呢?感覺VNX2-F不是EMC重點推的產(chǎn)品,因為有了XtremIO。
雖然目前我看XtremIO主推的3大場景是VDI,虛擬機,然后才是數(shù)據(jù)庫,而且數(shù)據(jù)庫的案例更多是數(shù)據(jù)分析,而且目前XtremIO還不支持遠程復制,但從目前我了解的純閃存陣列的特性和理念看,西瓜哥隱隱覺得XtremIO對高端存儲的威脅是最大的,不知道各位網(wǎng)友如何認為呢?歡迎反饋你的想法,我來分享給大家。
希望大家積極反饋你的意見和建議,微信掃描如下二維碼,關(guān)注微信公眾號“高端存儲知識”,與作者微信互動。通過掌上DOIT移動客戶端,您可以訂閱西瓜哥專欄,第一時間獲得知名專家和業(yè)界領(lǐng)袖的深度剖析與趨勢分析。