噜噜噜综合,又色又爽又高潮免费观看,综合无码一区二区三区四区五区,中文字幕无码人妻aaa片,四虎成人精品永久网站

存儲專欄:主流全閃存陣列架構(gòu)對比

西瓜哥 發(fā)表于:14年09月25日 20:48 [原創(chuàng)] DOIT.com.cn

  • 分享:
[導(dǎo)讀]今天,西瓜哥來分享一下SolidFire CEO Dave的一個演講。這哥們長得很帥,講得更棒,有很多的技術(shù)細(xì)節(jié)。

存儲在線專欄文章:今天,西瓜哥來分享一下SolidFire CEO Dave的一個演講。這哥們長得很帥,講得更棒,有很多的技術(shù)細(xì)節(jié),英文比較好的可以點擊后面的{閱讀原文}觀看(建議用電腦看,因為iOS不支持flash,不過可下載vimeo客戶端觀看)。


這是他在今年4月份在Tech Filed Day的一個演講。首先是一個聲明,他說這些材料都是基于公開的內(nèi)容,沒有設(shè)計為突出某種架構(gòu)好,只是說明每一種方法的權(quán)衡,當(dāng)然,他內(nèi)心還是認(rèn)為自己的架構(gòu)最好。好誠實的小伙,O(∩_∩)O哈!當(dāng)然,演講沒有包括市場上全部的AFA架構(gòu),因為很多和傳統(tǒng)的存儲架構(gòu)一樣,很多沒有豐富的特性,有些還文檔缺乏。


這是AFA的競爭全景圖,我們看到大帥哥把IBM的TMS放在Flash Applicance分類里面了,因為它是以硬件為中心的設(shè)計方式。3PAR是傳統(tǒng)陣列的改良,而本質(zhì)上專為全閃存系統(tǒng)全新設(shè)計的是Pure Storage(后面簡稱Pure)、XtremIO和SolidFire(后面簡稱SF)。這些產(chǎn)品的特點是采用商用硬件,以軟件為中心,提供豐富的數(shù)據(jù)服務(wù),支持在線的數(shù)據(jù)縮減功能。


為什么傳統(tǒng)的架構(gòu)不適合閃存?一是基于extent映射和固定塊對齊的方式很難支持重刪和壓縮,二是傳統(tǒng)的RAID方式帶來閃存的性能和磨損問題,三是控制器的資源和閃存的需要不匹配,因為閃存需要更多的原數(shù)據(jù)的存儲和管理。


每個架構(gòu)主要從6個方面的設(shè)計來闡述他們的選擇。


  • 第一點,首先是系統(tǒng)的擴(kuò)展性考慮。也就是這個架構(gòu)如何支持容量和性能的擴(kuò)展。


Pure采用的是縱向擴(kuò)展的方式,和傳統(tǒng)的塊存儲架構(gòu)一樣。需要更多性能,你只能升級到更強(qiáng)大的控制器,容量可以通過磁盤框來擴(kuò)展,但性能受限于兩個控制器的能力。


而SF和XtremIO都采用橫向擴(kuò)展的架構(gòu)。性能和容量都可以線性增長。目前SF集群的節(jié)點可以是不同類型,而且性能可以動態(tài)均衡。


一般來說,縱向擴(kuò)展的架構(gòu)適合小型、固定可預(yù)測的負(fù)載,而橫向擴(kuò)展架構(gòu)適合大規(guī)模、不可預(yù)測和更需要彈性的場合。


  • 第二點,看一下系統(tǒng)冗余的設(shè)計,也就是如何保證高可用和進(jìn)行數(shù)據(jù)保護(hù)的。


Pure和XtremIO都是采用雙控共享硬盤的架構(gòu),和傳統(tǒng)的塊存儲架構(gòu)一樣。如果硬盤失效,在該硬盤框內(nèi)重構(gòu),控制器失效,另外一個控制器接管。如果硬盤框壞了,系統(tǒng)就不能運行了,也就是磁盤框是SPOF(單點失效)。


而SF采用的是啥也不共享的架構(gòu)。西瓜哥認(rèn)為,其實就是現(xiàn)在云(對象)存儲,如華為的UDS常采用的架構(gòu)。這種架構(gòu)采用多副本技術(shù),好像SF是2副本,可以承受最少一個節(jié)點故障。但與會嘉賓提出了“質(zhì)疑”,說軟件成為了SPOF,O(∩_∩)O哈!因此,軟件的健壯性很重要。


這兩種架構(gòu)的區(qū)別如下,共享硬盤架構(gòu)比較適合小容量起步的場合,硬盤成本高,而啥也不共享架構(gòu)比較適合大容量場景,控制器成本高。


  • 第三點,看數(shù)據(jù)的組織和IO路徑。數(shù)據(jù)是如何組織,放置和定位,這個對重刪的實現(xiàn)影響很大,F(xiàn)代的閃存架構(gòu)對比傳統(tǒng)的塊存儲就是采用大量的元數(shù)據(jù)。


Pure采用位置尋址技術(shù)。主要的元數(shù)據(jù)是一個KV倉庫(映射表)。另外,需要多個附加的元數(shù)據(jù)結(jié)構(gòu),包括鏈接表,重刪表和中間表(定向圖)。所有的元數(shù)據(jù)都保存在SSD里,采用內(nèi)存做Cache。


這個是IO讀寫的路徑。


而SF和XtremIO采用的是內(nèi)存尋址的方式。卷的元數(shù)據(jù)是一個KV倉庫,但key指向的地方不是塊的位置,而是指紋。塊的元數(shù)據(jù)是一個分布的KV倉庫,指向?qū)嶋H的塊數(shù)據(jù)。這個實際就是XtremIO經(jīng)常說的兩階段元數(shù)據(jù)架構(gòu)。所有的元數(shù)據(jù)都保存在SSD上,但全部在內(nèi)存里運行。


這是他們的讀寫路徑。


這是兩種尋址方式的對比。位置尋址只是單層映射,即LBA->位置,因此位置和元數(shù)據(jù)是緊耦合的關(guān)系,數(shù)據(jù)移動需要更新元數(shù)據(jù),重刪實現(xiàn)需要附加的表格和索引。而內(nèi)容存儲方式采用兩層元數(shù)據(jù)映射LBA->塊ID->位置,物理位置和元數(shù)據(jù)是松耦合,靈活性更好,天然就支持重刪。位置尋址適合所有的控制器都可以全局訪問元數(shù)據(jù)的架構(gòu),而內(nèi)容尋址適合大規(guī)模全局重刪和分布式架構(gòu)。


  • 第四點是如何刪除不用的數(shù)據(jù)。即數(shù)據(jù)不用了,如何刪除?這個對于傳統(tǒng)的塊存儲不是問題,數(shù)據(jù)塊重寫就可以了,但對于全局重刪、快照優(yōu)化的架構(gòu)非常復(fù)雜,因為你不知道誰還在引用這個數(shù)據(jù)。


Pure采取的是引用驗證的方式。當(dāng)回收空間的時候(垃圾收集),檢查各種表看是否還有人在引用這個數(shù)據(jù),如果沒有就刪除。


而XtremIO采取的是引用計數(shù)的方式。原理其實很簡單,塊的元數(shù)據(jù)(塊ID->位置映射)包含一個引用計數(shù),“寫”一次計數(shù)就加一,重寫時舊的塊(其實就是刪除)就減一。大家注意這個寫打引號了,不是真正去寫物理位置。如果是一個卷的刪除、克隆和XCOPY操作,由于需要大量修改引用計數(shù),因此會觸發(fā)后臺進(jìn)程去做這件事情。當(dāng)引用為零,說明沒人用這個塊了,就可以被條帶更新時覆蓋寫了。(XtremIO不做系統(tǒng)級的垃圾收集,下面我們討論這個問題)


SF采用的方法是標(biāo)記&掃除GC的方式。塊的元數(shù)據(jù)的每個入口都包含一個“在用”的標(biāo)志,每隔一定的時間,所有的塊都標(biāo)記為未使用。卷的元數(shù)據(jù)創(chuàng)建當(dāng)前使用的塊ID的Bloom Filters(布隆濾波器,一種高效的數(shù)據(jù)結(jié)構(gòu),西瓜哥的數(shù)學(xué)是語文老師教的,大家可以百度學(xué)習(xí)),送到塊層,在布隆濾波器里面的塊就標(biāo)志為“在用”,在GC結(jié)束后沒有在用的塊就刪除了。這樣周而復(fù)始。(西瓜哥認(rèn)為這個設(shè)計的關(guān)鍵是找了一個高效的布隆濾波器,其特點是高效但可能有非常小的誤判,但誤判只是浪費一點點空間而已,即有些塊沒有用而標(biāo)記為使用了。但這個誤判不影響數(shù)據(jù)的安全,但效率大大提高)。


這個三種方法的區(qū)別如下,引用驗證的方式需要存儲層和元數(shù)據(jù)層緊耦合,允許幾乎馬上就決定那個數(shù)據(jù)不在用,特別適合全局共享元數(shù)據(jù)場景;引用計數(shù)的方式在某些操作(克隆,XCOPY)需要大量更新計數(shù)器,計數(shù)要非常精確,不能有絲毫差錯,也可以幾乎立即決定哪些數(shù)據(jù)沒有用,非常適合單一信任源的元數(shù)據(jù)場景;而標(biāo)記&掃除 GC的方式,需要GC掃除在后臺運行,系統(tǒng)的抗干擾性非常高,允許沒有改變塊元數(shù)據(jù)下對卷的元數(shù)據(jù)進(jìn)行處理,非常適合松耦合的分布系統(tǒng)。


  • 第5點是關(guān)于閃存數(shù)據(jù)布局的設(shè)計。也就是數(shù)據(jù)如何組織和保存在各個固態(tài)硬盤里。傳統(tǒng)的基于extent/chunk的布局并不合適,因為有閃存性能和寫放大問題,快照和克隆的低效問題和固定的RAID幾何形狀和熱備盤問題。


XtremIO采用的是固定塊的方式。數(shù)據(jù)以一個RAID條帶(23+2)條帶寫入,一旦硬盤寫滿,部分條帶被新數(shù)據(jù)更新,一旦寫入,數(shù)據(jù)不再“移動”,數(shù)據(jù)塊固定為4K大。ìF(xiàn)在XIOS 3.0已經(jīng)改為8K,因此需要破壞升級,如昨天我們討論的那樣)。


而SF和Pure采用的是日志結(jié)構(gòu)方式。SSD空間分成固定大小的段,進(jìn)入的數(shù)據(jù)匯聚成段并順序?qū)懭耄坏┯脖P寫滿,部分的段被垃圾收集,并寫到新的位置,每個塊大小可以不同。


大帥哥還講了不同SSD不同讀寫模式下硬盤性能的對比。


如果是普通的cMLC的硬盤,由于其控制芯片處理能力差,超供也不高,因此,剛開始性能還不錯,但開始垃圾收集的時候,128K隨機(jī)讀性能馬上下降到2500 IOPS。


如果是1M的隨機(jī)讀,IOPS雖然可以到9000,但抖動厲害。


但1M的順序讀性能基本可以穩(wěn)定在17000 IOPS。


這也是為啥XtremIO自己不做GC的原因。因為其寫是隨機(jī)寫。而日志架構(gòu)的方式,可以做到順序的大塊聚合寫。因此系統(tǒng)可以做GC,也就是可以采用cMLC的SSD,降低介質(zhì)成本。


而XtremIO必須采用eMLC SSD,因為需要SSD自己來做GC。這個Anobit的eMLC SSD,在GC的時候,128K隨機(jī)寫的性能是15000IOPS。性能還是不如上面的cMLC 1M順序?qū)憽?/p>


因此,固定塊方法很難支持變長的塊,大塊的寫會分成多個4k(或8K)的寫,SSD控制器來做閃存的page管理,需要更多的SSD超供(28%),這種架構(gòu)適合比較簡單的文件系統(tǒng),采用eMLC SSD的場景。而日志結(jié)構(gòu)的方法,很容易支持變長的塊,寫可以聯(lián)合,即多個小的寫聚合成一個大塊的寫,存儲系統(tǒng)幫助閃存做page管理,SSD的超供只需要7%,特別適合采用cMLC SSD,支持壓縮的場景。(不過,現(xiàn)在XtremIO XIOS 3.0也支持壓縮了)。


  • 第6點,也是最后一點,講一下掉電保護(hù)的方法。也就是掉電后如何保證數(shù)據(jù)的安全,這個和傳統(tǒng)的存儲一樣,不需要特別考慮,除了性能要求很高情形和盡量平衡閃存磨損方面。僅僅寫到SSD并不是一個好方法。


Pure采用鏡像SLC SSD的方式,所有的數(shù)據(jù)和元數(shù)據(jù)更新流化到一個持久的日志文件里,使用2個SLC SSD做鏡像,兩個SSD都放在第一個硬盤框里。這種方法使用小部分的SLC SSD空間,但可以增加壽命,提供更一致的寫延遲。


而XtremIO采用系統(tǒng)內(nèi)存加UPS的方法。待寫的數(shù)據(jù)和元數(shù)據(jù)保存在2個控制器的內(nèi)存里,臟數(shù)據(jù)在后臺聚合成RAID條帶寫,和VNX類似,所有的控制器需要外部UPS保護(hù),只不過VNX2現(xiàn)在用的是內(nèi)部的BBU。在掉電的時候,臟數(shù)據(jù)刷到磁盤框或者內(nèi)部控制器的SSD。如果單個BBU故障如何處理不明(可能會繼續(xù)保持運行)。


SF采用PCIe NVRAM的方式,每一個節(jié)點都內(nèi)置一個8G NVRAM卡,上面有超級電容和SLC閃存,所有的數(shù)據(jù)和元數(shù)據(jù)都同時提交給2個節(jié)點,掉電時,卡把數(shù)據(jù)刷到閃存,來電的時候恢復(fù)到內(nèi)存里。(這個方法和華為FusionStorage的保護(hù)方式類似)


這三種方法的對比如下。SLC SSD的方式性能最差,PCIe NMRAM其次,DRAM w/UPS方式最快。SLC SSD方式磁盤框壞了數(shù)據(jù)就不可用了,而其他兩種則沒有SPOF。SLC SSD和PCIe NVRAM的方式都可以防止軟件崩潰,而DRAM w/UPS在雙kenel panic下有數(shù)據(jù)丟失的風(fēng)險,維護(hù)性也差一些。SLC SSD的方法適合從控制器去除持久數(shù)據(jù)的場景(這個就是為啥Pure支持NDU的一個原因,因為使用了無狀態(tài)控制器),而DRAM w/UPS的方式實現(xiàn)簡單,性能好,但PCIe NVRAM方式提供最高級別的保護(hù)。


最后匯總了三個閃存產(chǎn)品架構(gòu)在這6方面的實現(xiàn)方法,有些方法擴(kuò)展性好,有些方法實現(xiàn)簡單,有些方法成本最優(yōu),有些方法可靠性最高。圖中用不同的顏色做了標(biāo)記。總的來說,Pure關(guān)注TTM,可用性和成本,而XtremIO關(guān)注TTM和擴(kuò)展性,SF關(guān)注擴(kuò)展性、可用性和成本。


而擴(kuò)展性、可用性和成本正是下一代數(shù)據(jù)中心的關(guān)鍵屬性。哈,原來大帥哥還是有偏見的,O(∩_∩)O哈!


總結(jié):西瓜哥認(rèn)為,這三種架構(gòu),其實各有優(yōu)缺點。今天學(xué)習(xí)以后,終于知道為啥XtremIO不用做垃圾收集了,也知道為啥它不用cMLC了,也更了解為啥它的性能為啥如此好,并且能夠保持一致的性能了,也了解大家對他元數(shù)據(jù)安全的擔(dān)心。因此,西瓜哥的觀點,如果追求性價比,我會采用Pure,如果追求極致性能,我重點考慮XtremIO,如果考慮大規(guī)模的擴(kuò)展,SF是不二之選。

希望大家積極反饋你的意見和建議,微信掃描如下二維碼,關(guān)注微信公眾號“高端存儲知識”,與作者微信互動。通過掌上DOIT移動客戶端,您可以訂閱西瓜哥專欄,第一時間獲得知名專家和業(yè)界領(lǐng)袖的深度剖析與趨勢分析。

 

[責(zé)任編輯:西瓜哥]
西瓜哥
今天有點時間,去老地方轉(zhuǎn)了轉(zhuǎn),發(fā)現(xiàn)在Pure Storage領(lǐng)頭的全閃存陣列初創(chuàng)公司的猛烈炮火下,大廠已經(jīng)亂了陣腳,形勢一片混亂。
官方微信
weixin
精彩專題更多
存儲風(fēng)云榜”是由DOIT傳媒主辦的年度大型活動。回顧2014年,存儲作為IT系統(tǒng)架構(gòu)中最基礎(chǔ)的元素,已經(jīng)成為了推動信息產(chǎn)業(yè)發(fā)展的核心動力,存儲產(chǎn)業(yè)的發(fā)展邁向成熟,數(shù)據(jù)經(jīng)濟(jì)的概念順勢而為的提出。
華為OceanStor V3系列存儲系統(tǒng)是面向企業(yè)級應(yīng)用的新一代統(tǒng)一存儲產(chǎn)品。在功能、性能、效率、可靠性和易用性上都達(dá)到業(yè)界領(lǐng)先水平,很好的滿足了大型數(shù)據(jù)庫OLTP/OLAP、文件共享、云計算等各種應(yīng)用下的數(shù)據(jù)存儲需求。
聯(lián)想攜ThinkServer+System+七大行業(yè)解決方案驚艷第十六屆高交會
 

公司簡介 | 媒體優(yōu)勢 | 廣告服務(wù) | 客戶寄語 | DOIT歷程 | 誠聘英才 | 聯(lián)系我們 | 會員注冊 | 訂閱中心

Copyright © 2013 DOIT Media, All rights Reserved. 北京楚科信息技術(shù)有限公司 版權(quán)所有.