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