人工智能(AI)和機(jī)器學(xué)習(xí)將成為幫助企業(yè)利用其核心數(shù)字資產(chǎn)創(chuàng)造競爭優(yōu)勢的很重要工具之一。但在選購AI數(shù)據(jù)存儲設(shè)備之前,企業(yè)必須考慮機(jī)器學(xué)習(xí)平臺在獲取、處理和保留數(shù)據(jù)時的一系列需求。
我們首先需要研究一下機(jī)器學(xué)習(xí)軟件使用的數(shù)據(jù)的生命周期,因為這有助于企業(yè)理解在為AI選擇存儲時應(yīng)該考慮哪些因素。最開始的時候,企業(yè)必須獲取大量的數(shù)據(jù)來訓(xùn)練機(jī)器學(xué)習(xí)或AI算法。AI軟件工具通過處理數(shù)據(jù)來學(xué)習(xí)任務(wù),如識別某個對象、處理視頻和跟蹤運(yùn)動。數(shù)據(jù)可以從各種各樣的源生成,并且本質(zhì)上是非結(jié)構(gòu)化的,比如對象和文件。
在訓(xùn)練或開發(fā)AI算法時,能夠通過對數(shù)據(jù)的處理開發(fā)一個模型,為企業(yè)提供所需的洞察力或效益。開發(fā)機(jī)器學(xué)習(xí)算法很少是作為一個單一的過程來完成的。隨著企業(yè)不斷積累新的數(shù)據(jù),算法也會得到改進(jìn)。這意味著很少有數(shù)據(jù)被丟棄,相反,數(shù)據(jù)會隨著時間的推移而快速增長和重新處理。
AI數(shù)據(jù)存儲設(shè)備的選型標(biāo)準(zhǔn)
在企業(yè)為AI平臺選擇存儲設(shè)備之前,必須首先考慮以下幾點:
1、成本。AI數(shù)據(jù)存儲設(shè)備的價格對企業(yè)來說是一個關(guān)鍵因素。顯然,高管層和那些參與采購決策的人會希望存儲盡可能具有成本效益,在許多情況下,這將影響組織的產(chǎn)品選擇和策略。
2、可伸縮性。如上文所說,在創(chuàng)建機(jī)器學(xué)習(xí)或AI模型的過程中,收集、存儲和處理大量數(shù)據(jù)是非常必要的。機(jī)器學(xué)習(xí)算法要求源數(shù)據(jù)呈指數(shù)增長,才能實現(xiàn)精度的線性提高。創(chuàng)建可靠而準(zhǔn)確的機(jī)器學(xué)習(xí)模型可能需要數(shù)百TB甚至PB的數(shù)據(jù),而且這只會隨著時間的推移而增加。
構(gòu)建PB級存儲系統(tǒng),一般需要使用對象存儲或橫向擴(kuò)展文件系統(tǒng)。如今的對象存儲當(dāng)然可以滿足AI工作負(fù)載的容量需求,但它們可能無法滿足其他標(biāo)準(zhǔn),如高性能。橫向擴(kuò)展文件系統(tǒng)可以提供高性能和良好的可伸縮性,但是將整個數(shù)據(jù)集存儲在一個平臺上可能會很昂貴。另外,出于可伸縮性需求和高容量產(chǎn)品的成本,塊存儲往往不是機(jī)器學(xué)習(xí)或人工智能的正確選擇。這里唯一的例外是公有云,稍后我們對此進(jìn)行討論。
存儲成本的變化引入了分層存儲或使用多種類型的存儲來存儲數(shù)據(jù)的概念。例如,對象存儲是存儲大量不活躍的AI數(shù)據(jù)的良好目標(biāo)。當(dāng)需要處理數(shù)據(jù)時,可以將數(shù)據(jù)移動到對象存儲中的高性能文件存儲集群或節(jié)點上,一旦處理完成,就可以將數(shù)據(jù)移動回來。
3、性能。AI數(shù)據(jù)的存儲性能有三個方面。首先,可能也是最重要的是延遲,也就是軟件處理每個I/O請求的速度。低延遲很重要,因為改善延遲對創(chuàng)建機(jī)器學(xué)習(xí)或AI模型所需的時間有直接影響。復(fù)雜的模型開發(fā)可能需要數(shù)周或數(shù)月的時間。通過縮短這個開發(fā)周期,組織可以更快地創(chuàng)建和細(xì)化模型。在檢查延遲能力時,由于對象訪問的流特性,對象將引用時間存儲為第一個字節(jié),而不是單個I/O請求的延遲。
性能的另一個方面是吞吐量,以及從存儲平臺寫入或讀取數(shù)據(jù)的速度。系統(tǒng)吞吐量很重要,因為AI訓(xùn)練需要處理大量數(shù)據(jù)集,經(jīng)常重復(fù)讀取相同的數(shù)據(jù),以準(zhǔn)確地開發(fā)模型。機(jī)器學(xué)習(xí)和AI數(shù)據(jù)的來源,例如自動駕駛汽車上的傳感器,每天可以生成多個TB的新數(shù)據(jù)。所有這些信息都必須添加到現(xiàn)有的數(shù)據(jù)存儲中,并且對任何現(xiàn)有處理的影響要最小。
性能的最后一個方面是并行訪問。機(jī)器學(xué)習(xí)和AI算法并行處理數(shù)據(jù),運(yùn)行多個任務(wù),這些任務(wù)可以多次讀取相同的數(shù)據(jù),并跨越多個并行任務(wù)。對象存儲擅長并行讀取I/O處理,因為不需要管理對象鎖或?qū)傩?。文件服?wù)器跟蹤內(nèi)存中打開的I/O請求或文件句柄。因此,活動I/O請求的數(shù)量取決于平臺上可用的內(nèi)存。
機(jī)器學(xué)習(xí)數(shù)據(jù)可以由大量的小文件組成。在這個領(lǐng)域,文件服務(wù)器可以提供比對象存儲更好的性能。這里需要問AI存儲方案供應(yīng)商的一個關(guān)鍵問題是,在大文件類型和小文件類型上,他們的產(chǎn)品的性能特征會如何變化。
4、可用性和耐久性。機(jī)器學(xué)習(xí)和AI模型可以長時間連續(xù)運(yùn)行。通過訓(xùn)練開發(fā)算法可能需要幾天或幾周的時間。在此期間,存儲系統(tǒng)必須保持啟動并持續(xù)可用。這意味著任何升級、技術(shù)替換或系統(tǒng)擴(kuò)展都需要在不停機(jī)的情況下進(jìn)行。
在大型系統(tǒng)中,組件故障是常見的。這意味著任何用于AI工作的平臺都應(yīng)該能夠從設(shè)備(如硬盤或SSD)和節(jié)點或服務(wù)器故障中恢復(fù)。對象存儲使用擦除編碼在許多節(jié)點上廣泛分布數(shù)據(jù),并最小化組件故障的影響。有一些擦除編碼技術(shù)可以用在橫向擴(kuò)展文件系統(tǒng),以提供同等水平的彈性。擦除編碼方案的效率非常重要,因為它直接關(guān)系到讀寫I/O的性能,特別是對于小文件而言。
由于多數(shù)大規(guī)模對象存儲都太大,無法定期備份,因此可靠的擦除編碼成為AI存儲平臺的一個基本特性。
5、公有云。開發(fā)機(jī)器學(xué)習(xí)和AI算法需要高性能存儲和高性能計算。許多AI系統(tǒng)都是基于GPU的,比如Nvidia DGX,它可以用于開發(fā)精確算法所涉及的許多復(fù)雜數(shù)學(xué)計算。
公有云服務(wù)提供商已經(jīng)開始提供GPU加速的虛擬實例,可用于機(jī)器學(xué)習(xí)。在公有云中運(yùn)行機(jī)器學(xué)習(xí)工具降低了構(gòu)建機(jī)器學(xué)習(xí)開發(fā)基礎(chǔ)設(shè)施的資本成本,同時提供了擴(kuò)展開發(fā)機(jī)器學(xué)習(xí)模型所需的基礎(chǔ)設(shè)施的能力。
使用公有云計算的挑戰(zhàn)在于,如何以一種同時具有成本效益和實用性的方式將數(shù)據(jù)導(dǎo)入公有云?;谠频膶ο蟠鎯λ俣忍?,跟不上機(jī)器學(xué)習(xí)的I/O需求;因此,必須使用本地塊存儲。每延遲一分鐘移動數(shù)據(jù),就會帶來更多運(yùn)行基礎(chǔ)設(shè)施的成本,以及執(zhí)行機(jī)器學(xué)習(xí)的延遲。
公有云的另一個問題是數(shù)據(jù)導(dǎo)出的成本。盡管云服務(wù)提供商不收取將數(shù)據(jù)轉(zhuǎn)移到其平臺的費(fèi)用,但它們確實對從其平臺外的公共網(wǎng)絡(luò)訪問的任何數(shù)據(jù)收取費(fèi)用。因此,盡管公有云在計算方面提供了靈活性,但以及時和經(jīng)濟(jì)有效的方式從云中獲取數(shù)據(jù)并不總是那么簡單。
供應(yīng)商正在開發(fā)存儲產(chǎn)品,這些產(chǎn)品運(yùn)行在公有云中,覆蓋了本地和云。這些產(chǎn)品可以有效地復(fù)制數(shù)據(jù)或?qū)?shù)據(jù)移動到云中,并且只在完成后將結(jié)果移動回來。這些復(fù)制技術(shù)具有高效的帶寬,使得在前提上存儲數(shù)據(jù)并導(dǎo)入到云中進(jìn)行分析工作變得切實可行。
6、集成。在本文中,我們將機(jī)器學(xué)習(xí)和AI的數(shù)據(jù)存儲與計算分開來看。構(gòu)建AI數(shù)據(jù)存儲可能很困難,因為必須考慮存儲網(wǎng)絡(luò)和調(diào)優(yōu)存儲以與機(jī)器學(xué)習(xí)應(yīng)用程序協(xié)同工作的其他因素。
產(chǎn)品的預(yù)打包使供應(yīng)商能夠在將產(chǎn)品交付給客戶之前測試和優(yōu)化其產(chǎn)品。如今,有一些存儲產(chǎn)品結(jié)合了流行的AI軟件、計算(如通用cpu和gpu)、網(wǎng)絡(luò)和存儲,以交付一個AI就緒的平臺,許多詳細(xì)的調(diào)優(yōu)工作是在部署這些系統(tǒng)之前完成的。盡管成本可能是個問題,但對許多客戶來說,預(yù)先打包的系統(tǒng)可以降低采用AI存儲的障礙。
顯然,選擇正確的AI數(shù)據(jù)存儲平臺,其實是性能、可伸縮性和成本等指標(biāo)之間的平衡。正確使用存儲平臺非常重要,因為涉及的數(shù)據(jù)量非常大。一旦選擇錯誤,其代價可能是高昂的。與任何存儲產(chǎn)品選型決策一樣,重要的是與供應(yīng)商溝通,包括演示和評估,以準(zhǔn)確了解他們的產(chǎn)品如何滿足人工智能和機(jī)器學(xué)習(xí)的需求。