計算存儲(Computational storage),應(yīng)該屬于企業(yè)數(shù)據(jù)存儲領(lǐng)域出現(xiàn)的一個新詞。計算存儲出現(xiàn)的前因是,將數(shù)據(jù)從存儲位置移動到處理位置往往需要太多的時間、精力和資源。其中產(chǎn)生的時間滯差會導致產(chǎn)生延遲,而延遲就代表更慢的響應(yīng)時間。將數(shù)據(jù)處理工作移到離數(shù)據(jù)更近的地方可以提高效率、減少延遲。
理論上,物聯(lián)網(wǎng)和其他應(yīng)用的計算存儲應(yīng)該會加快處理速度,但理論和現(xiàn)實往往存在差距。哪些計算存儲用例是有意義的?它們是否增加了成本?性能的提高是否能證明成本的合理性?如果要實現(xiàn)計算存儲應(yīng)用,這些關(guān)鍵問題必須得到解答。
但是,計算存儲的概念之前不是已經(jīng)嘗試過了嗎?還記得存儲卸載(storage offload)嗎?它為什么會失敗?
關(guān)于存儲卸載的“傳說”
存儲卸載試圖解決CPU處理能力有限的問題,人們認為卸載一些存儲處理問題可以釋放CPU。然而,CPU的晶體管數(shù)量每隔18到24個月就會翻一番,以指數(shù)級方式增加處理能力,所以誰還會需要存儲卸載呢?
共享存儲也從服務(wù)器上卸載了大量CPU密集型存儲處理??梢苑旁诖鎯橘|(zhì)上的CPU要么是功率不足,要么就是太昂貴。而專用集成電路(asic)太貴,上市時間太長。操作系統(tǒng)太大、太笨重、效率太低,無法在可用的卸載處理能力上運行,或者過于專有化。存儲介質(zhì)主要是HDD,將處理直接放在HDD上存在一些固有的問題,這使它變得很困難。
所以說,存儲卸載并沒有正式“起飛”。
如今有什么不同
今天,摩爾定律正在逐漸失去效力,CPU也不會每隔18到24個月就將晶體管的數(shù)量增加一倍。獨立共享存儲陣列不再是惟一的存儲共享選項。軟件定義存儲(SDS)使得服務(wù)器端存儲在擴展和擴展配置中都可以共享。
此外,目前也有一些小型的、便宜的、具有相當大的能力的CPU。大多數(shù)是ARM處理器,但低成本、強大的現(xiàn)場可編程門陣列(FPGA)也在廣泛使用。存儲媒介普遍轉(zhuǎn)向了快速、非易失的固態(tài)硬盤——NVMe驅(qū)動器、SATA閃存固態(tài)硬盤和存儲級——不再只有HDD。最后,Linux和容器使得在ARM處理器或FPGA中運行的應(yīng)用程序具有可接受的效率。
讓我們回到用例。在哪里使用計算存儲是有意義的?最大的用例是物聯(lián)網(wǎng)的計算存儲。這些設(shè)備正以驚人的速度激增。有報告稱,到2025年,這個數(shù)字將超過754.4億。大多數(shù)是相對較小的,持續(xù)地生成數(shù)據(jù)。傳統(tǒng)的馮·諾依曼計算機架構(gòu)沒有太多的空間。然而,大多數(shù)這些設(shè)備必須實時捕獲、存儲和分析數(shù)據(jù)。
物聯(lián)網(wǎng)計算存儲
以自動駕駛汽車為例。它必須確定接收到的感覺輸入是反射、影子還是人,而且處理時間必須以微秒為單位。這可能是一個很好的計算存儲用例。
另一個例子是石油和天然氣行業(yè)需要分析現(xiàn)場鉆頭振動。實時分析可以防止現(xiàn)場泄漏、損壞和其他意外。
還有閉路電視攝像機,它們正變得越來越小,在客戶端-服務(wù)器架構(gòu)方面的空間越來越小。相機分辨率不斷提高,這就產(chǎn)生了更多的數(shù)據(jù)。將數(shù)據(jù)移動到可以分析數(shù)據(jù)的中心位置需要時間。如今,相機的實時處理是必須的,特別是在面部識別、車牌識別、違禁品或爆炸物識別等應(yīng)用中??刹僮鞯男畔⑹菚r間敏感的,不能等待數(shù)據(jù)被移動。分析現(xiàn)場數(shù)據(jù)需要處理和存儲,使計算存儲成為一個理想的選擇。
這些只是物聯(lián)網(wǎng)計算存儲應(yīng)用的一小部分,還有很多其他的。一般來說,如果是物聯(lián)網(wǎng)設(shè)備,就可能會有計算存儲應(yīng)用。
內(nèi)部橫向擴展服務(wù)器架構(gòu)
另一個計算存儲用例來自服務(wù)器和存儲體系架構(gòu)本身。正如前面提到的,摩爾定律已經(jīng)放緩。這是十多年前CPU停止變快并開始增加更多內(nèi)核的原因之一。因此,橫向擴展的服務(wù)器體系架構(gòu)激增。橫向擴展是超融合基礎(chǔ)設(shè)施的核心。但是,如果橫向擴展在服務(wù)器中內(nèi)部化了怎么辦?換句話說,如果我們有一個可內(nèi)部橫向擴展的服務(wù)器架構(gòu)呢?
使用這種方法,主CPU核心將用于應(yīng)用程序處理,計算存儲核心用于CPU密集型存儲工作負載,如快照、復制、重復數(shù)據(jù)刪除、壓縮、加密、解密、病毒掃描、元數(shù)據(jù)搜索,甚至內(nèi)容搜索。服務(wù)器將成為一個內(nèi)部橫向擴展集群,不過目前還沒有使用這種架構(gòu)的服務(wù)器。這是計算存儲可以實現(xiàn)的眾多功能之一。
需要注意的是:計算存儲是一個全新的領(lǐng)域;一些供應(yīng)商已經(jīng)開始生產(chǎn)產(chǎn)品,包括Burlywood、Eideticom、NGD Systems、Nyriad,Samsung和ScaleFlux。但是目前業(yè)界沒有計算存儲相關(guān)的標準。SNIA和OpenFog聯(lián)盟已經(jīng)建立了工作小組來創(chuàng)建一個相應(yīng)的標準,但是在這個標準被確定下來之前,購買需要謹慎。
還有其他值得關(guān)注的問題。計算存儲設(shè)備的成本將超過標準存儲設(shè)備,而在CPU處理方面的突破可能會導致計算存儲被邊緣化——這發(fā)生過,也不排除再次發(fā)生的可能。
物聯(lián)網(wǎng)和其他用例的計算存儲潛力巨大。但是,正如對待所有的新技術(shù)一樣,請謹慎行事。