比特網(wǎng)/huanghui 發(fā)表于:14年08月29日 16:56 [綜述] DOIT.com.cn
如果打開一個網(wǎng)頁用了3秒鐘,您可能覺得體驗非常好,但是如果這一時間變?yōu)?分鐘呢?恐怕鮮有人會有心情去看一個3分鐘之前要打開的頁面。對于一個企業(yè)來說也是一樣,如果自己的系統(tǒng)能夠?qū)崟r的響應自己所有請求,那么無疑這個企業(yè)能有更多的時間專注于業(yè)務上的創(chuàng)新,領先一步可能意味著占盡先機。再進一步說到數(shù)據(jù)中心,高性能應該是服務器、網(wǎng)絡和存儲一直以來追求的重點。本篇文章所談的是閃存,因為閃存的出現(xiàn)使得數(shù)據(jù)中心存儲的性能提高了數(shù)個數(shù)量級,自此實時分析速度也得到了重新定義。
在傳統(tǒng)數(shù)據(jù)中心中很多組件速度的提升都是成倍增長的,而且有明確的升級周期。據(jù)悉,在過去十年中,CPU性能增長了8~10倍;內(nèi)存性能增長了7~9倍;網(wǎng)絡速度增長了100倍;總線性能增長了20倍。但是磁盤陣列的主體磁盤呢?在過去十年中磁盤性能增長了1.2倍,當下最快的15k轉(zhuǎn)速的磁盤在實際應用中IOPS性能也不會超過1000(而且這一轉(zhuǎn)速已經(jīng)很難再提升了),磁盤的性能提升的瓶頸在于其通過磁頭尋道來進行讀寫操作的原理,要打破這個僵局,最好的辦法是開發(fā)新的介質(zhì),這里新的介質(zhì)就是閃存。
閃存通過對NAND充放電來記錄0和1,沒有尋道意味著性能可以提升一個或者幾個數(shù)量級,事實也是如此。當下主流的SAS/SATA SSD的IOPS都可以做到接近1萬(這一數(shù)值比很多入門級磁盤陣列還要高)的水平,而主流的PCIe閃存卡則更是超過了20萬IOPS。這樣一來,傳統(tǒng)存儲系統(tǒng)需要靠幾十甚至數(shù)百塊磁盤并發(fā)才能實現(xiàn)的性能如今可能靠一張插在服務器中的PCIe閃存卡就可以實現(xiàn)。
以上談到了單個SSD或者PCIe閃存卡的性能,如果談到存儲陣列層面,全閃存陣列無疑是當下存儲設備中性能最高的產(chǎn)品,IBM FlashSystem的最新版本V840(基本配置)的4K隨機讀(不使用緩存)的IOPS可以達到30萬,同時響應延遲在200微秒以內(nèi),而設備的帶寬可以達到4.8GB/s。
當性能提升至少兩個數(shù)量級之后,對于企業(yè)來講意味著什么呢?碧桂園地產(chǎn)在Flash/SVC上部署了自己的ERP系統(tǒng)之后,銀行現(xiàn)金勾兌時間縮短為原來的十分之一,查詢性能提高了10倍。依照碧桂園的業(yè)務規(guī)模,傳統(tǒng)的存儲陣列要實現(xiàn)性能提高十倍,恐怕要組織數(shù)千塊盤進行并發(fā)才可以。更多的行業(yè)實踐效果如下圖所示:
我們可以清晰的看到閃存給客戶帶來的價值,對于電信、證券、石油、中小企業(yè)和地產(chǎn)這些企業(yè),閃存可能帶來的是TCO降低為原來的一半或者更少,性能提高為原來的數(shù)十甚至更高的倍數(shù)。乍一看這些數(shù)據(jù)很驚人,但是考慮到閃存的優(yōu)勢就非常容易理解,SSD本身的性能就已經(jīng)是硬盤的數(shù)十到百倍,在CPU和內(nèi)存等組件沒有遇到瓶頸的情況下,性能提高到原來的幾十倍是非常正常的。
本篇文章所提到的是閃存對實時分析速度的再造,這是因為實時分析的重點在于實時兩個字,其對系統(tǒng)中每個環(huán)節(jié)的性能要求都非常高,應用特點是短時間內(nèi)大量的并發(fā)IO以及要求非常短的延遲(實時意味著0延遲,雖然這不可能達到)。閃存只有在這樣一種場景下才能盡顯其優(yōu)勢,而且只有在這種情況下才能有再造速度的必要.
對于FlashSystem為代表的全閃存陣列再造實時分析速度的觀點,筆者認為應該從三個方面來闡述.首先是閃存突破了硬盤留下的瓶頸,補齊了存儲這塊短板,才會造成應用閃存后系統(tǒng)性能提升幾十倍。傳統(tǒng)數(shù)據(jù)中心硬件架構(gòu)中最大的瓶頸在于硬盤,閃存的出現(xiàn)補齊了硬盤給數(shù)據(jù)中心性能造成的短板,這才有可能使得閃存運用到數(shù)據(jù)中心中會造成速度提高到原來的幾個數(shù)量級,如果原來硬盤造成的瓶頸問題不是很大,那么也不會有閃存再造實時分析速度這樣的觀念了。
第二, 全閃存陣列再造實時分析速度的前提是自身的再造。SATA/SAS接口的SSD可以很大程度上提升企業(yè)系統(tǒng)的性能,但是說是再造未免牽強,因為SATA/SAS接口的SSD在接口上存在瓶頸。所以包括IBM FlashSystem以及眾多的PCIe閃存卡廠商都沒有選擇SATA/SAS接口的SSD。
這僅是從硬盤來講,不僅是介質(zhì)層面,從更高的陣列層面來講,源自TMS的FlashSystem并沒有磁盤陣列的基因,所以自一開始FlashSystem所做的就是打造新的存儲解決方案,這點很重要,因為全閃存陣列的使命是將企業(yè)系統(tǒng)處理速度提升至傳統(tǒng)系統(tǒng)的幾十至上百倍,那么如果拿磁盤陣列做優(yōu)化,那么難免受磁盤陣列設計思路的禁錮。
以提升陣列性能來講,傳統(tǒng)磁盤陣列就是靠增加硬盤數(shù)量來提高性能,優(yōu)化隊列深度等問題則放在了次要的地位,全閃存陣列則不一樣,由于延遲特別小,所以多盤并發(fā)并不是提升性能的唯一方法,優(yōu)化讀寫路徑、減少寫放大或許更為重要。需要從再造存儲架構(gòu)開始。
第三,再造實時分析速度需要靠全閃存陣列。如果單是追求速度,那么PCIe閃存卡或許更有優(yōu)勢,一張主流的PCIe閃存卡可以做到20萬 IOPS,雖然不比全閃存陣列的性能高,但是用來做加速肯定是一個不錯的選擇。我們并不能否認PCIe閃存卡的加速能力,其在很多數(shù)據(jù)中扮演著加速卡的角色,其應用非常廣泛。PCIe閃存卡當下只是加速卡而不是存儲是因為PCIe閃存卡多是裝于服務器中,不同服務器中的閃存資源共享和數(shù)據(jù)交換需要通過上層軟件來實現(xiàn),或許將來隨著PCIe交換技術(shù)的發(fā)展,或許PCIe閃存卡會成為主存儲中的一大介質(zhì),但是現(xiàn)在只能是加速,如果說主存儲,只能是 FlashSystem這樣的全閃存陣列。
分析了PCIe閃存卡與全閃存陣列之間的區(qū)別之后,筆者認為靠主存儲來再造實時分析速度就需要靠全閃存陣列。FlashSystem為代表的全閃存陣列是一個完整的存儲解決方案,這么說除了提升性能,作為主存儲還有非常多的問題需要考慮,比如說可靠性,在上文中提到的幾個行業(yè)實踐中,如果性能的提升和TCO的下降不是以高可靠和高可用為基礎,恐怕這里列舉的行業(yè)用戶都不會使用全閃存陣列了。
另一方面,全閃存陣列需要與數(shù)據(jù)中心其他組件或者應用進行很好的結(jié)合,F(xiàn)lashSystem的V840與SVC的存儲虛擬化的結(jié)合便是IBM對于下一代主存儲解決方案的一個重要考量。這就使得全閃存陣列能更好的支持上層應用。即是說如果全閃存陣列在實現(xiàn)了傳統(tǒng)存儲所具備的所有功能之后,將系統(tǒng)的性能提高了數(shù)十倍,那么這就是一次成功的再造過程。
如文章開頭舉得例子,打開一個網(wǎng)頁的時間為3分鐘和3秒的不同在于,用戶是否會獲取這個頁面的信息,我想這里的3分鐘就意味著價值為0。全閃存再造實時分析速度的意義也在于此,試想以往的一個季度工作可能在一天之內(nèi)完成,這對企業(yè)運營的推動作用是不言而喻的。