存儲的過去與未來 分析存儲I/O與物理定律
進入2000年后,存儲行業(yè)發(fā)生了翻天覆地的變化。有好的變化,同時也有令人不太滿意的地方。比如存儲管理方面的情況變得有些糟糕。大家要克服的種種限制,其實是由簡單物理學造成的。數(shù)據(jù)從應(yīng)用程序轉(zhuǎn)移到硬件受制于計算機及其存儲硬件里面的物理制約因素。
我們先不妨比較一下1976年、2002年和2010年各自最快的計算機和最快的磁盤存儲設(shè)備,以便更深入地了解我們在最近26年所看到的變化。
* 雖然處理器性能也許不能最準確地衡量吞吐量,但是個很好的衡量標準。
**指每秒百萬次浮點運算
***指每秒萬億次浮點運算
****讀寫操作的平均尋道和延遲時間
*****使用光纖通道RAID,使用2 Gb接口和RAID-5 8+1
******源自towww.top500.org,參照2010年6月的排名
*******使用RAID-5/6 8+1或8+2
下面比較了彼此的差異:
與系統(tǒng)處理器性能的提升幅度相比,尋道和延遲時間的改善幅度一向很小,閃存驅(qū)動器除外,那是由于磁盤是機械設(shè)備,但閃存驅(qū)動器取代不了所有的磁盤存儲設(shè)備。原因是閃存成本實在太高了。有些人表示,閃存驅(qū)動器密度的增加幅度夠大,有望成為切實可行的存儲設(shè)備,但我總是要問的一個問題是,閃存驅(qū)動器密度增加的速度是否與存儲增長的速度一樣快。我們都知道,答案是不一樣快。
我早在2002年就說過,存儲密度并沒有跟上系統(tǒng)處理器性能提升的步伐;當時至少落后兩個數(shù)量級以上,就算使用RAID-5 8+1,也是這樣。自2002年以來,這個問題變得尤為嚴重(閃存存儲設(shè)備除外)。普通硬盤(HDD)的尋道和旋轉(zhuǎn)延遲時間沒有發(fā)生太大的變化。隨著時代不斷邁進,閃存驅(qū)動器的性能將受制于整個存儲堆棧的性能。處理器中斷的成本、SAS/SATA驅(qū)動程序的訪問以及通過電纜的訪問將成為三大限制因素。
早在2002年,計算機內(nèi)存系統(tǒng)與存儲硬件之間最常見的總線接口是PCI,當時PCI的最大速率為532MBps,但速率約1GBps的PCI-X變得普及起來。哇!很難相信:到2010年,如今性能最高的總線是16通道的PCIe 2.0,每條通道的額定速率為500MBps,也就是說全雙工速率為8Gbps;沒錯,PCIe 3.0即將來臨;但據(jù)我所知,我們在一段時間內(nèi)看不到16通道的PCIe 3.0(只有8通道的PCIe 3.0),所以性能與16通道的PCIe 2.0一個樣。這是2002年性能的8倍。自2002年以來性能提升了30倍,這相當差;但截至今天,還沒有哪家存儲廠商生產(chǎn)出16通道的SAS/SATA /光纖通道卡。16通道插槽一般用于圖形卡,而不是用于存儲設(shè)備。目前市面上速度最快的存儲卡只是8通道,這相當于性能只提升了4倍。這不是相當差,而是非常差。
我當時還預測,考慮到磁盤驅(qū)動器是機械設(shè)備,它們不會發(fā)生太大變化;事實確實如此。如今閃存驅(qū)動器在市場上很普遍,但它們無法用于滿足所有的存儲需求,因為每吉字節(jié)成本要比普通存儲設(shè)備高得多。我曾說過,推動存儲行業(yè)發(fā)展的動力主要是消費者需求。今天看了一家知名網(wǎng)上零售商的報價,發(fā)現(xiàn)256GB容量的2.5英寸閃存驅(qū)動器售價699.00美元,而2TB容量的3.5英寸普通硬盤售價129.99美元(兩者都是消費級存儲設(shè)備,不是企業(yè)級存儲設(shè)備)。沒錯,閃存驅(qū)動器的成本是在下降,但仍有很長一段路要走。我個人認為,閃存驅(qū)動器恐怕永遠取代不了普通硬盤。
我在2002年說過:“重要的是,在可預見的將來,總體趨勢不會改變,除非你打算購買成本比普通存儲設(shè)備遠高出100倍的固態(tài)硬盤,作為你的所有存儲系統(tǒng)。每天在每個系統(tǒng)上,你都會面臨性能問題,要求你對設(shè)備提出大量請求,那樣才能獲得很高的設(shè)備利用率。”上面這個例子中的成本差異現(xiàn)已縮小到42倍——這個差異很大,但對大多數(shù)系統(tǒng)來說還是并不經(jīng)濟高效。
我強調(diào),需要有大量的I/O請求才能高效利用磁盤驅(qū)動器。這對硬盤驅(qū)動器性能,以及操作系統(tǒng)、協(xié)議文件系統(tǒng)和存儲系統(tǒng)的其他問題來說仍然很關(guān)鍵,因為I/O請求常常被分解成小的請求。
其實自2002年以來變化甚小——至于存儲方面,可能自1976年以來就是這樣。固態(tài)硬盤出現(xiàn)在世人面前已有將近30年,它與普通硬盤的成本差異現(xiàn)已縮小到42倍,而在早期高達1000倍。30年來已出現(xiàn)了大幅縮小,但是綜觀所有計算技術(shù),從1000倍縮小至42倍還不足以為此做幾個后空翻,以示慶賀。
計算技術(shù)變化的步伐在放緩。是的,現(xiàn)在我們有更多的處理器核心和更高的FLOPs(每秒浮點運算次數(shù)),但那些是實際有用的FLOPs嗎?內(nèi)存帶寬有沒有隨著處理器性能的提升而增加?當然,所有這些問題的答案都是否定的。隨著處理器性能和核心數(shù)量的增加,內(nèi)存帶寬卻嚴重滯后,即使英特爾和AMD推出了最新的芯片組,也是如此。存儲方面更糟糕。
唯一的亮點是閃存驅(qū)動器。就算閃存驅(qū)動器的速度極快,存儲仍將是瓶頸。原因何在?我在2002年寫的那篇文章沒有提到的一大方面是軟件。存儲堆棧在過去20年里沒有發(fā)生太大的變化。每當進行讀取或?qū)懭氩僮?,操作系統(tǒng)、文件系統(tǒng)、SCSI驅(qū)動程序、網(wǎng)絡(luò)驅(qū)動程序都參與其中。由于網(wǎng)絡(luò)堆棧開銷,這種情況并沒有因CIF或NFS等協(xié)議而得到任何改善。
要是存儲堆棧方面不有所變化,我認為存儲會讓位于相變內(nèi)存、惠普的憶阻器(Memristor)以及實現(xiàn)字節(jié)尋址能力(NAND閃存無法實現(xiàn))的其他技術(shù);廠商們會改動芯片,以支持包括這些技術(shù)的存儲層次體系。
將來總是會需要存儲堆棧和磁盤驅(qū)動器,但這并不意味著,I/O操作的大部分會使用這個堆?!幢氵^幾年,也是這樣。最后可能會出現(xiàn)這一幕:你把數(shù)據(jù)讀入到速度不如DRAM,但比閃存驅(qū)動器快得多的某種新的高密度存儲器,而存儲堆棧在系統(tǒng)重啟之前根本不會再讀取數(shù)據(jù)。
我不知道等這一幕變成實現(xiàn)時,自己是不是還在撰寫存儲方面的文章,或者甚至從事咨詢行業(yè)。
評論