大規(guī)模存儲基礎(chǔ)設(shè)施對于AI有著怎樣的要求
掃描二維碼
隨時隨地手機(jī)看文章
大規(guī)模的人工智能(AI)在容量和性能方面提高了存儲基礎(chǔ)設(shè)施的門檻。對于人工智能或機(jī)器學(xué)習(xí)(ML)環(huán)境,期望增長到數(shù)十個甚至數(shù)百TB的容量并不少見。盡管那些只提供全閃存陣列的供應(yīng)商可能會宣稱,這些環(huán)境實(shí)在太大而無法僅存儲在全閃存的一層上。這些環(huán)境中的大多數(shù)(由于它們的并行性質(zhì))在硬盤的服務(wù)幾乎與從閃存中獲得的服務(wù)一樣好。
要求1:高性能網(wǎng)絡(luò)
人工智能/機(jī)器學(xué)習(xí)環(huán)境創(chuàng)建使用內(nèi)部或直接連接存儲(DAS)的計算服務(wù)器集群的情況并不少見。即使共享存儲在使用可用容量和將工作負(fù)載更均勻地分配給計算節(jié)點(diǎn)方面效率更高,組織仍愿意犧牲這些效率來消除計算節(jié)點(diǎn)和共享存儲創(chuàng)建之間的網(wǎng)絡(luò)延遲。
NVMe光纖網(wǎng)絡(luò)(NVMe-oF)是明確設(shè)計用于基于內(nèi)存的存儲設(shè)備(如閃存和非易失性內(nèi)存的下一代網(wǎng)絡(luò)。它提供的延遲幾乎與DASNVMe相同。NVMe的深度命令和隊(duì)列深度使其也非常適合高度并行化的工作負(fù)載,并且人工智能/機(jī)器學(xué)習(xí)可能是所有工作負(fù)載中最并行的。NVMe-oF可能是專門為內(nèi)存存儲而設(shè)計的,但它也是為人工智能/機(jī)器學(xué)習(xí)量身定制的。
要求2:共享存儲
如果NVMe-oF可以解決計算和存儲之間的延遲問題,那么它將啟用第二個要求,即共享存儲。通過NVMe-oF連接的共享存儲解決方案,工作負(fù)載可以受益于共享存儲的所有自然屬性。首先,所有節(jié)點(diǎn)都可以訪問所有數(shù)據(jù),這意味著工作負(fù)載可以更均勻地分配其計算負(fù)載。這也意味著具有圖形處理單元(GPU)的節(jié)點(diǎn)可以訪問所有數(shù)據(jù)。由于圖形處理單元(GPU)的價格比CPU貴得多,因此讓圖形處理單元(GPU)處于繁忙狀態(tài)是當(dāng)務(wù)之急,而共享存儲則使這變得更加容易。
在衡量數(shù)十個甚至幾百PB的工作負(fù)載容量需求時,存儲效率的任何提高都可以節(jié)省大量成本。在每個計算節(jié)點(diǎn)都有專用驅(qū)動器的群集中,IT部門無法輕松地將可用存儲容量重新分配給群集中的其他節(jié)點(diǎn)。直接連接存儲(DAS)模型中缺乏資源池,這也意味著組織無法有效使用制造商推向市場的大容量驅(qū)動器。現(xiàn)在,具有雙重用途的節(jié)點(diǎn)(計算和存儲)可以安裝12個或更多16TB以上閃存驅(qū)動器或18TB以上硬盤驅(qū)動器,而單個節(jié)點(diǎn)可能無法有效使用。如果人工智能/機(jī)器學(xué)習(xí)存儲體系結(jié)構(gòu)從專用服務(wù)器中池化那些相同的硬盤,則可以對其進(jìn)行更精細(xì)的分配。人工智能/機(jī)器學(xué)習(xí)工作負(fù)載不僅需要擴(kuò)展以滿足容量需求,而且還必須可以直接訪問存儲節(jié)點(diǎn)以滿足性能需求。
要求3:多層存儲
考慮到人工智能/機(jī)器學(xué)習(xí)數(shù)據(jù)集的大小,分層幾乎是必須的,因?yàn)閿?shù)十PB的閃存太昂貴了。公平地說,某些人工智能工作負(fù)載不遵循80/20規(guī)則,在任何給定時間,80%的數(shù)據(jù)都是不活動的。這些工作負(fù)載可以從100%休眠狀態(tài)變?yōu)?00%活躍狀態(tài)。盡管如此,它們是高度并行的,并且數(shù)百個性能較低的硬盤驅(qū)動器可同時滿足工作負(fù)載的需求,從而可以提供這些工作負(fù)載所需的性能。如果沒有,他們可以在當(dāng)前網(wǎng)絡(luò)技術(shù)允許的范圍內(nèi)盡快傳送數(shù)據(jù)。
要求4:并行訪問
并行訪問意味著存儲基礎(chǔ)架構(gòu)中的每個節(jié)點(diǎn)為人工智能/機(jī)器學(xué)習(xí)集群中的每個計算節(jié)點(diǎn)提供對其所需數(shù)據(jù)的直接訪問。單個控制節(jié)點(diǎn)不會成為瓶頸。高水平的并行性對于人工智能/機(jī)器學(xué)習(xí)至關(guān)重要,因?yàn)榭赡苄枰瑫r訪問存儲池的計算節(jié)點(diǎn)數(shù)量眾多。正是這種并行性使吞吐量能夠使硬盤作為人工智能/機(jī)器學(xué)習(xí)存儲基礎(chǔ)設(shè)施中的組件而變得可行。并行文件系統(tǒng)幾乎總是需要客戶端或代理,但是與提供典型訪問相比,該代理除了提供并行訪問外,還通常需要較少的開銷。
要求5:多種協(xié)議
盡管需要并行訪問進(jìn)行處理,但另一個要求是多協(xié)議訪問,這對于將數(shù)據(jù)提取到存儲基礎(chǔ)架構(gòu)中特別有用。許多人工智能和機(jī)器學(xué)習(xí)項(xiàng)目都從物聯(lián)網(wǎng)(IoT)設(shè)備接收數(shù)據(jù)。這些設(shè)備通常需要與其附帶的協(xié)議進(jìn)行通信。許多設(shè)備通過SMB或NFS進(jìn)行通信,少數(shù)設(shè)備使用S3。更重要的是,幾乎沒有人使用本機(jī)并行文件系統(tǒng)客戶端。
要求6:高級元數(shù)據(jù)處理
人工智能/機(jī)器學(xué)習(xí)工作負(fù)載是元數(shù)據(jù)繁重的,盡管不是典型地因?yàn)樗鼈兪褂孟衩襟w和娛樂工作負(fù)載那樣的豐富元數(shù)據(jù)而并非如此。元數(shù)據(jù)在人工智能/機(jī)器學(xué)習(xí)工作負(fù)載中的重要性來自其通用文件的數(shù)量。在大多數(shù)情況下,數(shù)十億至數(shù)百PB的人工智能工作負(fù)載由數(shù)十億個文件組成。這些文件中的每個文件都有元數(shù)據(jù),就像其他工作負(fù)載一樣,大部分IO事務(wù)都來自元數(shù)據(jù)。人工智能/機(jī)器學(xué)習(xí)存儲基礎(chǔ)結(jié)構(gòu)必須管理元數(shù)據(jù),以便即使文件數(shù)量增加,它也可以維持系統(tǒng)的性能。元數(shù)據(jù)需要在整個存儲群集中進(jìn)行分配,以便所有節(jié)點(diǎn)都可以參與其管理。供應(yīng)商可能還會查看每個存儲節(jié)點(diǎn)中閃存上的存儲元數(shù)據(jù),以確保系統(tǒng)始終響應(yīng)。
結(jié)論
人工智能/機(jī)器學(xué)習(xí)工作負(fù)載與組織過去可能運(yùn)行的任何其他工作負(fù)載從根本上不同。早期的人工智能/機(jī)器學(xué)習(xí)項(xiàng)目已經(jīng)依靠DAS進(jìn)行數(shù)據(jù)存儲。問題在于直接連接存儲(DAS)無法平均分配負(fù)載,這對于每個人工智能工作負(fù)載的GPU數(shù)量增加至關(guān)重要。此外,直接連接存儲(DAS)的效率極低,復(fù)制和移動數(shù)據(jù)所花費(fèi)的容量和時間上的浪費(fèi)消除了廉價硬盤的價格優(yōu)勢。