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