在存儲(chǔ)領(lǐng)域,最近一段時(shí)間出了太多的新概念,其中包括“軟件定義存儲(chǔ)”、“Server SAN”以及“云存儲(chǔ)” 等。很多概念把大家弄的云里霧里,不知所云。那到底什么是軟件定義存儲(chǔ)?什么是Server SAN?什么是云存儲(chǔ)?其實(shí)很多存儲(chǔ)廠商都沒(méi)有很好的定義,行業(yè)也沒(méi)有一致的清晰定義。市場(chǎng)、媒體給出的很多都是宏觀的解釋。在這樣一個(gè)概念滿天飛的年 代,不僅用戶感覺(jué)到困惑,而且技術(shù)人員同樣會(huì)看不清楚未來(lái)的技術(shù)方向。下面來(lái)專門(mén)談一談軟件定義存儲(chǔ),看清楚軟件定義存儲(chǔ)的真實(shí)面目
在計(jì)算機(jī)發(fā)展到今天,軟件定義已經(jīng)不是什么新鮮事物,“software define everything”已經(jīng)成了一句口頭禪。提起軟件定義xxx,我很早就接觸了軟件定義儀器,并且在這個(gè)領(lǐng)域做了很長(zhǎng)時(shí)間的工作。軟件定義儀器的本質(zhì)是 用計(jì)算機(jī)來(lái)進(jìn)行數(shù)據(jù)處理,完成儀器的核心功能。傳統(tǒng)儀器通常采用專用硬件的方式完成核心功能,因此,在研制一臺(tái)儀器的時(shí)候,重點(diǎn)在于研制這些專用硬件。然 后將這些專用硬件拼裝成一臺(tái)儀器設(shè)備,配上特定的軟件,最后形成一臺(tái)儀器。而軟件定義儀器的思想已經(jīng)將儀器設(shè)備切分成通用模塊和計(jì)算機(jī)兩大部分。通用模塊主要有各類數(shù)據(jù)采集模塊、信號(hào)發(fā)生模塊、電源模塊、驅(qū)動(dòng)模塊等。這些模塊是通用的,并且可以通過(guò)PXI等儀器總線互連在一起,形成一套硬件設(shè)備。在這些通用模塊的基礎(chǔ)上,核心的數(shù)據(jù)處理算法完全運(yùn)行在計(jì)算機(jī)上,以及板載的 FPGA上。對(duì)于儀器設(shè)備,硬件模塊是通用的,不同的儀器具有不同的軟件,這就是軟件定義儀器,也被俗稱為虛擬儀器。從此我們可以看出,軟件定義儀器基于 通用的硬件模塊,不同的軟件功能則實(shí)現(xiàn)了不同的儀器設(shè)備。美國(guó)的NI(國(guó)家儀器)一直在推動(dòng)軟件定義儀器。但是,在很多人眼里,這種軟件定義儀器往往演變 成了計(jì)算機(jī)儀器,以為在一臺(tái)儀器設(shè)備中有了計(jì)算機(jī)之后,這個(gè)儀器設(shè)備就成了軟件定義儀器。在沒(méi)有理解軟件定義儀器核心思想的時(shí)候,往往會(huì)感慨“虛擬儀器” 真的好“虛”。其實(shí),軟件定義儀器的思想是測(cè)試測(cè)量行業(yè)的一大進(jìn)步,其強(qiáng)調(diào)了信號(hào)處理在儀器領(lǐng)域的重要地位,并且將硬件抽象成了幾類通用模塊。傳統(tǒng)只能通 過(guò)硬件來(lái)提高精度的辦法,如今可以采用強(qiáng)大的數(shù)字信號(hào)處理的方法的來(lái)實(shí)現(xiàn)。并且在通用硬件的基礎(chǔ)上很快的構(gòu)建儀器系統(tǒng),這就是軟件定義儀器的優(yōu)勢(shì)。
軟件定義存儲(chǔ)的思路和軟件定義儀器非常的相似,軟件定義存儲(chǔ)強(qiáng)調(diào)的是在通用服務(wù)器平臺(tái)上通過(guò)不同的軟件構(gòu)建不同的存儲(chǔ)設(shè)備。這里的一個(gè)關(guān)鍵字是通用服務(wù)器。在傳統(tǒng)存儲(chǔ)設(shè)備中,存儲(chǔ)廠商會(huì)自己研制存儲(chǔ)硬件,由于磁盤(pán)的IO性能很低,因此,存儲(chǔ)廠商需要自己研制面向IO的存儲(chǔ)硬件。比如說(shuō)在一臺(tái)存儲(chǔ)服務(wù)器中需要擴(kuò)展很多的SATA/SAS接口、擴(kuò)展硬件RAID功能;如果是高性能的存儲(chǔ)設(shè)備,還需要擴(kuò)展控制器之間的專用互連網(wǎng)絡(luò)接口; 由于存儲(chǔ)是IO密集型應(yīng)用,因此,低端存儲(chǔ)甚至可以采用計(jì)算性能比較差的CPU進(jìn)行設(shè)計(jì);存儲(chǔ)是追求高可靠性的一種應(yīng)用,因此,傳統(tǒng)存儲(chǔ)往往追求硬件設(shè)計(jì) 的可靠與穩(wěn)定,通過(guò)提高硬件的可靠性來(lái)達(dá)到存儲(chǔ)可靠的目的。在這種傳統(tǒng)存儲(chǔ)的思路下,存儲(chǔ)的設(shè)計(jì)主要分成存儲(chǔ)硬件和存儲(chǔ)軟件設(shè)計(jì)兩大部分。即使存儲(chǔ)硬件和 通用服務(wù)器很像,也需要進(jìn)行特殊定制。
軟件定義存儲(chǔ)的思想就是要將定制硬件的過(guò)程從存儲(chǔ)設(shè)計(jì)中徹底拋棄,存儲(chǔ)就是在通用服務(wù)器上的一套軟件,這就是軟件定義存儲(chǔ)這個(gè)概念背后的含義。從技術(shù)的角度來(lái)看,在通用服務(wù)器上完成存儲(chǔ)功能,是否和傳統(tǒng)存儲(chǔ)設(shè)計(jì)方法是相同的呢?為什么在幾年前軟件定義存儲(chǔ)不能橫空出世呢?而為什么直到今天才可以大力推行軟件定義存儲(chǔ)呢?
想要回答這個(gè)問(wèn)題,其實(shí)不難。主要原因在于通用服務(wù)器性能的發(fā)展、網(wǎng)絡(luò)技術(shù)的發(fā)展以及存儲(chǔ)介質(zhì)本 身的發(fā)展和進(jìn)步促進(jìn)了軟件定義存儲(chǔ)的落地。今天一個(gè)普通的服務(wù)器就可以安裝1TB左右的內(nèi)存;2路CPU;至少10多個(gè)PCIe3 Lane;在網(wǎng)絡(luò)方面基本都會(huì)板載兩個(gè)10Gbps以太網(wǎng),8G/16Gbps FC卡也非常的主流;在IO方面,閃存無(wú)論在性能還是在容量方面都取得了長(zhǎng)足的進(jìn)步。如果通用服務(wù)器、網(wǎng)絡(luò)、IO無(wú)法達(dá)到今天這種水平的話,軟件定義存儲(chǔ) 是很難實(shí)施的。試想,幾年前,如果我們想要達(dá)到1萬(wàn)IOPS的性能,我們只能通過(guò)并發(fā)磁盤(pán)的方式達(dá)到這種目標(biāo),為了能使更多的磁盤(pán)并發(fā),我們需要大量的SAS/SATA接口,因此,只能定制主板來(lái)滿足這種設(shè)計(jì)。而如今,一塊SSD盤(pán)就可以達(dá)成這個(gè)目標(biāo)。因此,軟件定義存儲(chǔ)是有其技術(shù)基礎(chǔ)來(lái)支撐的,計(jì)算機(jī)水平發(fā)展到今天,軟件定義存儲(chǔ)可以落地開(kāi)花了。
從技術(shù)角度來(lái)看,和傳統(tǒng)存儲(chǔ)相比,軟件定義存儲(chǔ)中的“軟件”有什么不同呢?傳統(tǒng)存儲(chǔ)中的硬件承擔(dān)了一部分系統(tǒng)可靠性的作用,基于通用服務(wù)器的存 儲(chǔ)沒(méi)有專用硬件的護(hù)航,勢(shì)必需要軟件具有更強(qiáng)的容錯(cuò)性。因此,在軟件定義存儲(chǔ)實(shí)施的過(guò)程中,設(shè)計(jì)者將運(yùn)行的硬件平臺(tái)假設(shè)成不穩(wěn)定、不可靠的。在這些不穩(wěn) 定、不可靠的硬件平臺(tái)上完成可靠數(shù)據(jù)存儲(chǔ),提供可靠數(shù)據(jù)服務(wù),那么整個(gè)系統(tǒng)的架構(gòu)需要發(fā)生重大變化。因此,軟件定義存儲(chǔ)往往采用分布式的架構(gòu),通過(guò)分布式 的方式提高整個(gè)系統(tǒng)的容錯(cuò)性,通過(guò)分布式的方式,將通用硬件引入的不穩(wěn)定因素降到最低。最近我們看到很多傳統(tǒng)存儲(chǔ)廠商紛紛推出了自己的軟件定義存儲(chǔ)解決方案, 這些方案本質(zhì)上都是將他們的軟件單獨(dú)打包進(jìn)行銷售,直接運(yùn)行到通用服務(wù)器平臺(tái)上,冠名“軟件定義存儲(chǔ)”。這些軟件和傳統(tǒng)存儲(chǔ)中的軟件沒(méi)有本質(zhì)上的區(qū)別,但 是,要知道當(dāng)初這些軟件在設(shè)計(jì)的時(shí)候,都有“專用硬件/平臺(tái)”的假設(shè)。一旦脫離這種專用硬件,整個(gè)系統(tǒng)的可靠性如何進(jìn)行有效保證呢?所以,這些匆匆上馬的 “軟件定義存儲(chǔ)”并不是這個(gè)領(lǐng)域的最佳產(chǎn)品,是一種偷梁換柱的方法。這個(gè)和當(dāng)年將磁盤(pán)替換成SSD之后,就宣稱自己是全閃存陣列是一回事??偟膩?lái)說(shuō),一個(gè) 真正的軟件定義存儲(chǔ)產(chǎn)品,需要面向通用服務(wù)器的特征進(jìn)行設(shè)計(jì),通常采用分布式架構(gòu),并且綜合閃存、磁盤(pán)進(jìn)行分層存儲(chǔ),通過(guò)軟件的方式不僅獲得最佳的性能、最大的容量,而且達(dá)成最低廉的價(jià)格。
從市場(chǎng)角度來(lái)看軟件定義存儲(chǔ),這是一種巨大創(chuàng)新。傳統(tǒng)存儲(chǔ)提供專用設(shè)備,最多和大型服務(wù)器廠商打配合,整合存儲(chǔ)和服務(wù)器,共同推動(dòng)IT系統(tǒng)解決 方案。一些不入流的服務(wù)器廠商以及大量的OEM廠商根本就進(jìn)入不了存儲(chǔ)這個(gè)領(lǐng)域,沒(méi)有機(jī)會(huì)與存儲(chǔ)廠商進(jìn)行互惠互利的合作。伴隨著數(shù)據(jù)時(shí)代的來(lái)臨,這些廠商 都在尋求一條道路能夠切入存儲(chǔ)市場(chǎng),軟件定義存儲(chǔ)就提供了這樣一種機(jī)會(huì)。軟件定義存儲(chǔ)的特征是在通用服務(wù)器的平臺(tái)上構(gòu)建存儲(chǔ),那么無(wú)論是大型服務(wù)器廠商,還是OEM廠商都有機(jī)會(huì)將自己的設(shè)備集成到存儲(chǔ)系統(tǒng)中去。這無(wú)疑給大量的硬件設(shè)備商打了一針雞血,因此,從這個(gè)角度來(lái)講,軟件定義存儲(chǔ)不火才怪呢。軟件定義存儲(chǔ)整合了服務(wù)器廠商、網(wǎng)絡(luò)廠商、存儲(chǔ)軟件廠商,共同打造了一個(gè)存儲(chǔ)生態(tài)圈。所以,這是一種產(chǎn)品、商業(yè)模式上的巨大創(chuàng)新。
從用戶角度來(lái)看軟件定義存儲(chǔ),的確節(jié)省了真金白銀,獲得了實(shí)惠。軟件定義存儲(chǔ)采用了通用的服務(wù)器平臺(tái),通用的平臺(tái)在價(jià)格上會(huì)低于專用平臺(tái)。無(wú)論是在可維護(hù)性方面還是在產(chǎn)品的可選擇面上都有更大的靈活性和空間,自然而然會(huì)降低整個(gè)存儲(chǔ)系統(tǒng)的成本,從而讓客戶獲利。
有此可以看出,軟件定義存儲(chǔ)不是一個(gè)概念,也不是飄在空中的一朵云,而是一個(gè)實(shí)實(shí)在在正在落地開(kāi)花的一種創(chuàng)新性產(chǎn)品。無(wú)論是從技術(shù)、產(chǎn)品、市場(chǎng) 還是用戶的角度來(lái)看,軟件定義存儲(chǔ)都是巨大的創(chuàng)新。但是,真正的想把軟件定義存儲(chǔ)做好,也并不是那么簡(jiǎn)單的事情,在技術(shù)上和傳統(tǒng)存儲(chǔ)軟件存在較大的差異, 需要更加強(qiáng)調(diào)系統(tǒng)的容錯(cuò)性。而并不是簡(jiǎn)單的把傳統(tǒng)存儲(chǔ)中的軟件單獨(dú)打包銷售。我相信軟件定義存儲(chǔ)是未來(lái)發(fā)展的方向,更加期待專業(yè)化的軟件定義存儲(chǔ)廠商誕 生,推動(dòng)國(guó)內(nèi)存儲(chǔ)行業(yè)的發(fā)展。
分享到微信 ×
打開(kāi)微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁(yè)分享至朋友圈。