本文提供設計指南,說明如何為 AI 和機器學習工作負載選擇及整合Google Cloud 儲存空間服務。機器學習生命週期的每個階段都有不同的儲存空間需求。舉例來說,上傳訓練資料集時,您可能會優先考量訓練的儲存空間容量,以及大型資料集的高總處理量。同樣地,訓練、微調、服務和封存階段也有不同的需求。對於大多數 AI 和 ML 工作負載,我們建議使用 Google Cloud Managed Lustre 做為儲存解決方案。Managed Lustre 具備高效能和擴充性,非常適合用於訓練、檢查點和服務。服務和封存階段有不同的需求。
這份文件可協助您評估容量、延遲時間和輸送量需求,做出明智的選擇,判斷合適的儲存解決方案。本文假設您已選取符合工作負載需求的運算平台。對於 AI 和機器學習工作負載,我們建議使用 Compute Engine 或 Google Kubernetes Engine (GKE)。如要進一步瞭解如何選取運算平台,請參閱「在 Google Cloud上代管應用程式」。
以下分頁簡要說明機器學習工作流程各階段的建議儲存空間選項。詳情請參閱「選擇適當的儲存空間」。
準備
在機器學習工作流程的準備階段,您會執行下列操作:
- 上傳及擷取資料。
- 訓練模型前,請先將資料轉換為正確格式。
如要使用多個儲存空間級別來節省儲存空間費用,建議使用 Cloud Storage 的自動調整級別功能或物件生命週期管理功能。
訓練
在機器學習工作流程的訓練階段,您會執行下列操作:
- 模型開發:使用 Notebook 開發模型,並套用疊代試誤法。
- 模型訓練:
- 使用小規模到大規模的機器加速器數量,重複讀取訓練資料集。
- 對模型開發和訓練套用疊代程序。
- 檢查點和重新啟動:
- 在模型訓練期間,請定期建立檢查點來儲存狀態,以便在節點故障後重新啟動訓練。
- 根據 I/O 模式和需要在檢查點儲存的資料量,選取檢查點。
在訓練階段,建議使用下列儲存空間選項:
- 如果工作負載具有下列特性,請使用 Managed Lustre:
- 訓練容量下限為 18 TiB。
- 訓練資料由小於 50 MB 的小檔案組成,可充分運用低延遲功能。
- 延遲時間必須少於 1 毫秒,才能滿足隨機 I/O 和中繼資料存取的儲存空間需求。
- 需要頻繁執行高效能檢查點作業。
- 提供電腦般的體驗,並完整支援 POSIX,方便您查看及管理使用者的資料。
- 如果工作負載具有下列特徵,請搭配使用 Cloud Storage、Cloud Storage FUSE 和 Anywhere Cache:
- 訓練資料包含大小 50 MB 以上的大型檔案。
- 可容忍數十毫秒的較高儲存空間延遲。
- 優先考量資料耐久性和高可用性,而非儲存空間效能。
為盡量節省費用,建議您在模型訓練的所有階段,都使用相同的儲存服務。
提供
在機器學習工作流程的服務階段,您會執行下列操作:
- 儲存模型。
- 在啟動時將模型載入執行機器加速器的執行個體。
- 儲存模型推論結果,例如生成的圖片。
- (選用) 儲存及載入用於模型推論的資料集。
在放送階段,建議使用下列儲存空間選項:
- 如果工作負載具有下列特徵,建議使用 Managed Lustre:
- 訓練和查核點工作負載會使用 Managed Lustre。
- 10 到 100 個推論節點的必要條件。
- 模型會頻繁更新。
- 如果工作負載具有下列特徵,請搭配使用 Cloud Storage、Cloud Storage FUSE 和 Anywhere Cache:
- 需要符合成本效益的解決方案,適用於推論節點數量可能變動的動態環境。
- 模型更新頻率較低。
- 即使發生區域性中斷事件,模型仍可優先保持高可用性和耐用性。
- 如果工作負載具有下列特徵,請使用 Google Cloud Hyperdisk ML:
- 需要超過 100 個推論節點。
- 模型更新頻率較低。
- 工作負載使用支援的虛擬機器 (VM) 類型。
- 您的管道可以管理唯讀磁碟區,以儲存模型。
封存
在機器學習工作負載的封存階段,您會長期保留訓練資料和模型。
如要透過多個儲存空間級別盡量降低儲存空間費用,建議使用 Cloud Storage Autoclass 或物件生命週期管理。
設計程序總覽
如要為Google Cloud中的 AI 和 ML 工作負載決定合適的儲存空間選項,請執行下列操作:
- 請考量工作負載的特性、預期效能和費用目標。
- 請參閱 Google Cloud,瞭解建議的儲存空間服務和功能。
- 根據您的需求和可用選項,為機器學習工作流程的每個階段 (準備、訓練、服務和封存) 選擇所需的儲存服務和功能。
本文著重於機器學習工作流程中,最需要仔細考量儲存選項的階段,但不會涵蓋機器學習生命週期、流程和功能的全部內容。
以下是為 AI 和機器學習工作負載選擇儲存空間的三階段設計程序總覽:
- 定義需求:
- 工作負載特性
- 安全限制
- 韌性規定
- 效能預測結果
- 費用目標
- 查看儲存空間方案:
- Managed Lustre
- Cloud Storage
- Hyperdisk ML
- 選擇適當的儲存空間:根據機器學習工作流程各階段的工作負載特性,選擇儲存空間服務、功能和設計選項。
定義需求
在Google Cloud中為 AI 和 ML 工作負載選擇儲存空間選項之前,您必須先定義工作負載的儲存空間需求。如要定義儲存空間需求,請考量運算平台、容量、輸送量和延遲要求等因素。
為協助您選擇 AI 和機器學習工作負載的儲存空間選項,請考量工作負載的特性:
- 您的 I/O 要求大小和檔案大小是小 (KB)、中還是大 (MB 或 GB)?
- 您的工作負載主要呈現循序或隨機檔案存取模式嗎?
- 您的 AI 和機器學習工作負載是否容易受到 I/O 延遲和首封位元組時間 (TTFB) 的影響?
- 您是否需要單一用戶端、匯總用戶端或兩者的讀取和寫入總處理量都達到高水準?
- 您最大的單一 AI 和機器學習訓練工作負載需要多少個圖形處理器 (GPU) 或 Tensor Processing Unit (TPU)?
您可以使用這些問題的答案,在本文稍後選擇適當的儲存空間。
查看儲存空間選項
Google Cloud 提供所有主要儲存格式的儲存服務:區塊、檔案、平行檔案系統和物件。下表說明您可考慮在Google Cloud上執行的 AI 和機器學習工作負載選項。下表列出本文件著重介紹的三種 Google 管理儲存空間選項,適用於 AI 和機器學習工作負載。不過,如果這些產品無法滿足您的特定需求,建議考慮 Google Cloud Marketplace 提供的合作夥伴管理儲存空間解決方案。
請評估每種儲存格式可用的服務功能、設計選項和相對優勢。
儲存服務 | 儲存空間類型 | 功能 |
---|---|---|
Managed Lustre | 平行檔案系統 |
|
Cloud Storage | 物件 |
|
Hyperdisk ML | 封鎖 |
|
Managed Lustre
Managed Lustre 是 Google Cloud中的全代管檔案系統。Managed Lustre 提供以 DDN EXAScaler Lustre 檔案系統為基礎建構的區域執行個體,可長期使用。Managed Lustre 非常適合需要提供低於一毫秒的低延遲存取、高處理量和高每秒輸入/輸出作業數 (IOPS) 的 AI 和機器學習工作負載。無論是少數或數千個 VM,Managed Lustre 都能維持高總處理量和高 IOPS。
Managed Lustre 具有下列優點:
- 符合 POSIX 標準:支援 POSIX 標準,確保與許多現有應用程式和工具相容。
- 降低訓練總持有成本:有效率地將資料傳送至運算節點,縮短訓練時間。這項加速功能有助於降低 AI 和機器學習模型訓練的總擁有成本。
- 降低服務總持有成本:與 Cloud Storage 相比,可加快模型載入速度,並提供最佳化的推論服務。這些功能有助於降低運算成本,並提升資源使用率。
- 有效運用資源:在單一執行個體中合併檢查點和訓練作業。這項資源用量有助於在單一高效能儲存系統中,盡可能有效率地使用讀取和寫入輸送量。
Cloud Storage
Cloud Storage 是一項全代管物件儲存服務,適合用於任何規模的 AI 和 ML 工作負載。Cloud Storage 擅長處理非結構化資料,適用於 AI 和機器學習工作流程的所有階段。
Cloud Storage 提供下列優點:
- 大規模擴充性:取得無限儲存空間容量,在全球範圍內擴充至 EB 級。
- 高總處理量:經過規劃後,最高可擴充至 1 TB/秒。
- 彈性的位置選項:為 AI 和機器學習工作負載選擇區域、多區域和雙區域儲存空間選項。
- 符合成本效益:根據資料存取模式,善用各種儲存空間級別,盡可能節省成本。
Cloud Storage 在規模和成本效益方面表現出色,但請務必考量其延遲和 I/O 特性。延遲時間預計為數十毫秒,高於其他儲存空間選項。如要盡量提高總處理量,您需要使用數百或數千個執行緒、大型檔案和大型 I/O 要求。Cloud Storage 提供多種程式設計語言的用戶端程式庫,以及 Cloud Storage FUSE 和 Anywhere Cache。
Cloud Storage FUSE 是 Google 支援的開放原始碼 FUSE 轉接器。Cloud Storage FUSE 可讓您將 Cloud Storage 值區掛接為本機磁碟機。Cloud Storage FUSE 並不完全符合 POSIX。因此,請務必瞭解 Cloud Storage FUSE 的限制,以及與傳統檔案系統的差異。有了 Cloud Storage FUSE,您就能以 Cloud Storage 的規模、經濟實惠的價格和效能,存取訓練資料、模型和檢查點。
Cloud Storage FUSE 快取功能有下列優點:
- 可攜性:使用標準檔案系統語意掛接及存取 Cloud Storage bucket,讓應用程式更具可攜性。
- 相容性:不必重構應用程式來使用雲端專屬 API,節省時間和資源。
- 減少閒置時間:直接存取 Cloud Storage 中的資料,快速啟動訓練工作,盡量減少 GPU 和 TPU 的閒置時間。
- 高處理量:充分運用 Cloud Storage 內建的可擴充性和效能,這項服務經過最佳化,可搭配 GPU 或 TPU 處理大量讀取作業的 ML 工作負載。
- 用戶端本機 檔案快取: 使用用戶端本機快取加快訓練速度,加快重複讀取檔案的速度。搭配 A3 機器類型隨附的 6 TiB 本機 SSD 使用時,這項加速功能可進一步提升效能。
Anywhere Cache 是 Cloud Storage 的功能,可為 Cloud Storage bucket 提供高達 1 PiB 的 SSD 支援區域讀取快取。「任何位置」快取可為特定區域內經常讀取的資料提供本機快速存取層,加快資料密集型應用程式的處理速度。
「任何位置」快取具有下列優點:
- 加快輸送量:自動調度快取容量和頻寬,提供高輸送量 (超過區域頻寬配額),並維持可預測的延遲時間。
- 降低成本:避免產生快取資料的資料轉出費用或儲存空間類別擷取費用。Anywhere Cache 會自動調整快取大小和可用頻寬,以滿足工作負載需求。
Hyperdisk ML
Hyperdisk ML 是高效能的區塊儲存空間解決方案,專為加速 AI 和機器學習工作負載而設計,這類工作負載需要對大型資料集進行唯讀存取。 Hyperdisk ML 運用 Colossus 的擴充性和可用性,在基礎檔案系統中平衡效能。相較於 Google Cloud 上的其他儲存空間服務,Hyperdisk ML 特別適合用於服務工作,因為它可以同時為多部 VM 提供極高的匯總輸送量。
Hyperdisk ML 具有下列優點:
- 加快模型服務速度並提升可擴充性:擴充至數千個並行節點,達到高匯總輸送量,以Kubernetes
ReadOnlyMany
模式最佳化推論工作負載的載入時間和資源使用率。 - 高效能密度:針對大型共用資料集,達到最高可用輸送量和快速讀取作業。Google Cloud
- 降低總持有成本 (TCO):縮短 GPU 閒置時間、提供多重附加功能,以及效能集區,進而降低成本。
- 並行唯讀存取:在 VM 之間共用磁碟,與使用多個含有相同資料的磁碟相比,這樣做更具成本效益,有助於降低費用。如要從多個 VM 存取靜態資料,您必須以唯讀模式將同一個磁碟連接至數百個 VM。如要更新磁碟區,必須先從所有 VM (其中一個除外) 卸載磁碟。
合作夥伴儲存空間解決方案
如果上述儲存空間服務無法滿足工作負載需求,您可以使用下列合作夥伴解決方案 (可在 Cloud Marketplace 中取得):
這些合作夥伴解決方案不由 Google 管理。您必須管理部署和作業工作,確保基礎架構內的整合和效能達到最佳狀態。
比較分析
下表列出Google Cloud儲存空間服務的主要功能。
Managed Lustre | Cloud Storage | Hyperdisk ML | |
---|---|---|---|
容量 | 18 TiB - 8 PiB | 沒有上下限。 | 4 GiB - 64 TiB |
資源調度 | 無法擴充 | 根據用量自動調度資源。 | 向上擴充 |
共用 | 可掛接至多個 Compute Engine VM 和 GKE 叢集。 |
|
支援 |
加密金鑰選項 | Google-owned and Google-managed encryption keys |
|
|
持續性 | Managed Lustre 執行個體的生命週期。 | 值區的生命週期 | 磁碟的生命週期 |
可用性 | 可用區 |
|
可用區 |
成效 | 根據佈建容量進行線性擴充 | 自動調度讀寫速率,以及動態重新分配負載 | 動態調度持續性儲存空間 |
管理 | 全代管、符合 POSIX 規範 | 全代管 | 手動格式化及掛接 |
資料移轉工具
本節說明在Google Cloud上,於儲存空間服務之間移動資料的選項。執行 AI 和機器學習工作時,您可能需要將資料從一個位置移到另一個位置。舉例來說,如果資料位於 Cloud Storage,您可能會將資料移至其他位置來訓練模型,然後將檢查點快照或訓練好的模型複製回 Cloud Storage。
你可以使用下列方法將資料轉移到 Google Cloud:
- 使用 Storage 移轉服務線上轉移資料:自動在物件和檔案儲存系統之間轉移大量資料,包括 Cloud Storage、Amazon S3、Azure 儲存服務和地端資料來源。Storage 移轉服務可讓您將資料從來源位置安全地複製到目標位置,並定期移轉變更的資料。此外,這項服務還提供資料完整性驗證、自動重試和負載平衡功能。
- 使用 Transfer Appliance 離線移轉資料:在網路連線和頻寬無法使用、受限或費用高昂的情況下,離線移轉及載入大量資料至 Google Cloud 。
- 將資料上傳至 Cloud Storage:使用 Google Cloud 控制台、gcloud CLI、Cloud Storage API 或用戶端程式庫,將資料線上上傳至 Cloud Storage bucket。
選擇資料傳輸方式時,請考量資料大小、時間限制、可用頻寬、費用目標,以及安全性與法規遵循需求等因素。如要瞭解如何規劃及執行資料移轉至 Google Cloud,請參閱「遷移至 Google Cloud:轉移大型資料集」。
選擇合適的儲存空間
AI 和 ML 工作負載通常包含四個主要階段:準備、訓練、服務和封存。每個階段都有獨特的儲存空間需求,選擇合適的解決方案可能會大幅影響效能、成本和作業效率。混合式或本機最佳化方法可讓您根據 AI 和機器學習工作負載各階段的具體需求,調整儲存空間選擇。不過,如果您的首要考量是統一管理及操作便利性,那麼採用全球簡化方法,在所有階段使用一致的解決方案,對於任何規模的工作負載都有好處。儲存空間選擇的有效性取決於資料集屬性、所需運算和儲存資源的規模、延遲時間,以及您先前定義的工作負載需求。
以下各節將詳細說明 AI 和 ML 工作負載的主要階段,以及可能影響儲存空間選擇的因素。
準備
準備階段是 AI 和機器學習應用程式的基礎。包括將各種來源的原始資料上傳至雲端環境,並將資料轉換為可用格式,以訓練 AI 和機器學習模型。這項程序包括清理、處理及轉換資料類型等工作,確保資料與所選 AI 和 ML 架構相容。
Cloud Storage 具備擴充性、耐久性和成本效益,特別適合用於處理 AI 領域常見的大型資料集,因此非常適合用於準備階段。Cloud Storage 與其他Google Cloud 服務無縫整合,可讓您充分運用資料密集型訓練的潛在最佳化功能。
在資料準備階段,您可以將資料重組為大型區塊,以提高存取效率並避免隨機讀取要求。如要進一步降低儲存系統的 I/O 效能需求,可以使用管道化、訓練最佳化或兩者兼具,增加 I/O 執行緒數量。
訓練
訓練階段是模型開發的核心,AI 和機器學習模型會從提供的資料中學習。這個階段涉及兩個重要層面,各有不同需求:有效載入資料以存取訓練資料,以及可靠的檢查點機制,可儲存模型進度。以下各節提供建議和考量因素,協助您為資料載入和檢查點選擇適當的儲存選項。
載入資料
載入資料時,GPU 或 TPU 會重複匯入批次資料,以訓練模型。在這個階段,您可以根據批次大小和要求順序,使用快取最佳化資料載入工作。資料載入期間的目標,是以最低成本盡可能有效率地訓練模型。
如果訓練資料的大小達到千兆位元組,可能需要多次重新讀取資料。這類規模需要 GPU 或 TPU 加速器進行密集處理。不過,您必須確保 GPU 和 TPU 不會閒置,並確保這些裝置會主動處理資料。否則,您在將資料從一個位置複製到另一個位置時,就必須支付閒置加速器的高昂費用。
如要盡量提升資料載入效能並降低成本,請考量下列因素:
- 資料集大小:整體訓練資料庫的大小,以及每個訓練資料集的大小。
- 存取模式:下列哪個選項最能分類您的訓練工作負載 I/O 存取模式:
- 平行和循序存取:檔案會指派給單一節點,並循序讀取。
- 平行隨機存取:檔案會指派給單一節點,並隨機讀取以建立樣本批次。
- 完全隨機存取:節點可以從任何檔案讀取任何範圍,以建立批次。
- 檔案大小:一般讀取要求的大小。
使用 Managed Lustre 載入資料
如果符合下列任一條件,您應選擇 Managed Lustre 來載入資料:
- 訓練容量下限為 18 TiB。
- 訓練資料由小於 50 MB 的小型檔案組成,可充分運用低延遲功能。
- 您必須符合隨機 I/O 和中繼資料存取的儲存空間需求,延遲時間不得超過 1 毫秒。
- 您需要類似桌機的體驗,並支援完整的 POSIX,才能查看及管理使用者的資料。
您可以將 Managed Lustre 做為 Cloud Storage 的高效能快取,透過全代管平行處理檔案系統,加快需要極高處理量和低延遲 I/O 作業的 AI 和機器學習工作負載。為盡量減少訓練期間的延遲,您可以從 Cloud Storage 將資料匯入 Managed Lustre。如果您使用 GKE 做為運算平台,可以透過
GKE Managed Lustre CSI 驅動程式,可預先填入 PersistentVolumesClaims 的資料 (來自 Cloud Storage)。訓練完成後,您可以將資料匯出至費用較低的 Cloud Storage 類別,盡量減少長期儲存費用。
用於載入資料的 Cloud Storage
如果符合下列任一條件,一般應選擇 Cloud Storage 來載入資料:
- 訓練容量需求為 100 TiB 以上。
- 訓練資料包含大小為 50 MB 以上的大型檔案。
- 您優先考量資料持久性和高可用性,而非儲存空間效能。
Cloud Storage 提供可擴充且符合成本效益的解決方案,可儲存大量資料集,而 Cloud Storage FUSE 則可讓您以本機檔案系統的形式存取資料。Cloud Storage FUSE 會將訓練資料儲存在靠近機器加速器的位置,加快訓練期間的資料存取速度,進而提高輸送量。
對於需要超過 1 TB/s 處理量的工作負載,Anywhere Cache 可快取資料並擴充區域頻寬配額,進而提升讀取速度。如要評估 Anywhere Cache 是否適合您的工作負載,請使用 Anywhere Cache 建議工具分析資料用量和儲存空間。
檢查點和還原
如要檢查點和還原,訓練工作必須定期儲存狀態,才能在執行個體發生故障時快速復原。發生故障時,工作必須重新啟動、擷取最新檢查點,然後繼續訓練。建立及擷取檢查點的確切機制通常會因架構而異。如要瞭解 TensorFlow Core 的檢查點和最佳化技術,請參閱「訓練檢查點」。如要瞭解 PyTorch 的檢查點和最佳化技術,請參閱「儲存及載入模型」。
您只需要在任何時間點儲存幾個檢查點。檢查點工作負載通常包含大量寫入作業、幾次刪除作業,以及 (理想情況下) 發生故障時的偶爾讀取作業。
如要盡可能提升檢查點和還原作業的效能,請考慮下列因素:
- 模型大小:AI 和機器學習模型中的參數數量。模型大小會直接影響檢查點檔案的大小,範圍可能從 GiB 到 TiB。
- 檢查點頻率:模型儲存檢查點的頻率。 頻繁儲存可提供更佳的容錯能力,但會增加儲存成本,且可能影響訓練速度。
- 檢查點復原時間:您要載入檢查點並繼續訓練的復原時間。如要盡量縮短復原時間,請考量查核點大小、儲存空間效能和網路頻寬等因素。
Managed Lustre 檢查點
如果符合下列任一情況,您應選擇 Managed Lustre 做為檢查點:
- 訓練工作負載已使用 Managed Lustre 載入資料。
- 您需要經常執行高效能檢查點作業。
如要盡量提高資源利用率,並減少加速器閒置時間,請使用 Managed Lustre 進行訓練和檢查點作業。Managed Lustre 可快速寫入檢查點,達到高 VM 處理量。您可以將檢查點保留在持續性 Managed Lustre 執行個體中,也可以定期將檢查點匯出至 Cloud Storage,以節省費用。
用於檢查點的 Cloud Storage
如果符合下列任一情況,請選擇 Cloud Storage 做為檢查點:
- 訓練工作負載會使用 Cloud Storage FUSE。
- 您優先考量資料持久性和高可用性,而非儲存空間效能。
如要提升檢查點效能,請搭配使用 Cloud Storage FUSE 與階層式命名空間,充分運用快速的不可分割重新命名作業,並非同步儲存檢查點。為避免在服務期間意外洩漏訓練資料集中的私密資訊,您需要將檢查點儲存在獨立的 Cloud Storage bucket 中。為減少上傳作業停滯時的尾端寫入延遲,Cloud Storage FUSE 會在 10 秒後嘗試重試。
提供
提供模型 (也稱為推論) 時,主要 I/O 模式為唯讀,目的是將模型載入 GPU 或 TPU 記憶體。在提供模型階段,您的目標是在實際工作環境中執行模型。模型比訓練資料小得多,因此您可以在多個執行個體中複製及擴充模型。提供資料時,高可用性以及防範可用區和區域性故障的機制至關重要。因此,您必須確保模型適用於各種故障情境。
在許多生成式 AI 和機器學習應用實例中,模型的輸入資料可能相當小,而且可能不需要永久儲存。在其他情況下,您可能需要對模型執行大量資料 (例如科學資料集)。如要執行大量資料,請選擇儲存空間選項,盡可能減少分析資料集期間的 GPU 或 TPU 閒置時間,並使用永久位置儲存推論結果。
模型載入時間會直接影響加速器的閒置時間,進而產生大量費用。如果每個節點的模型載入時間增加,可能會在許多節點中放大,進而導致成本大幅增加。因此,如要提高服務基礎架構的成本效益,請務必盡量縮短模型載入時間。
如要盡量提升放送成效並降低成本,請考量下列因素:
- 模型大小:模型大小 (以 GiB 或 TiB 為單位)。模型越大,所需的運算資源和記憶體就越多,延遲時間也可能增加。
- 模型載入頻率:您打算更新模型的頻率。頻繁載入和卸載會消耗運算資源,並增加延遲。
- 服務節點數量:提供模型服務的節點數量。 節點越多,延遲時間通常會縮短,總處理量也會增加,但基礎架構成本也會提高。
用於放送的 Managed Lustre
如果符合下列任一條件,您應選擇 Managed Lustre 來放送模型:
- 訓練和檢查點工作負載使用 Managed Lustre。
- 工作負載使用 10 到 100 個推論節點。
- 您經常更新模型。
如果您已使用 Managed Lustre 進行訓練和檢查點作業,這項服務可為模型提供經濟實惠的高效能選項。代管 Lustre 提供高 VM 輸送量和叢集總輸送量,有助於縮短模型載入時間。您可以為任意數量的服務 VM 使用 Managed Lustre。
用於放送的 Cloud Storage
如果符合下列任一條件,您應選擇 Cloud Storage 來提供模型服務:
- 您需要適用於動態環境的經濟實惠解決方案,因為推論節點數量可能會變更。
- 您不常更新模型。
- 即使發生區域性中斷,您也會優先確保模型的高可用性和高耐用性。
透過多區域或雙區域架構,Cloud Storage 可提供高可用性,並保護工作負載免於區域和地區故障。如要加快模型載入速度,您可以啟用平行下載功能,搭配使用 Cloud Storage FUSE,平行擷取模型各部分。
如要以超過 1 TB/s 的處理量提供模型服務,或部署超過一百個服務節點,請搭配使用「任何位置」快取與多區域值區。因此可提供高效能、跨區域的備援儲存空間,以及彈性。此外,使用「任何位置」快取時,快取資料不會產生資料輸出和儲存空間級別擷取費用。
用於服務的 Hyperdisk ML
如果符合下列任一條件,您應選擇 Hyperdisk ML 來提供模型:
- 您需要超過 100 個推論節點。
- 您不常更新模型。
- 工作負載使用支援的 VM 類型。
- 您的管道可以管理唯讀磁碟區,以儲存模型。
使用 Hyperdisk ML 做為 Cloud Storage 資料的快取,提升服務效能。Hyperdisk ML 會使用共用效能集區,並在多個 VM 中動態佈建輸送量,有效處理任何規模的唯讀模型服務。
封存
封存階段的 I/O 模式為「寫入一次,很少讀取」。您的目標是儲存不同的訓練資料集,以及您產生的不同模型版本。您可以將這些資料和模型增量版本用於備份和災難復原。此外,您也必須將這些物品長期存放在耐用的位置。雖然您可能不常需要存取資料和模型,但希望在需要時可以使用這些項目。
Cloud Storage 具有極高的耐久性、廣大的規模和低廉的成本,是長期儲存物件資料的最佳Google Cloud 選擇。Cloud Storage 提供不同的儲存空間級別,可根據您存取資料集、模型和備份檔案的頻率,提供最佳成本效益。您可以根據預期的封存資料存取頻率,選取適當的儲存空間級別:
- 經常存取資料:Standard Storage
- 每月資料存取:Nearline Storage
- 每季存取資料:Coldline Storage
- 每年存取資料:Archive Storage
使用物件生命週期管理,您可以建立政策,根據特定條件自動將資料移至長期儲存空間類別,或刪除資料。如果您不確定存取資料的頻率,可以使用自動分類功能,根據存取模式在儲存空間類別之間自動移動資料。
後續步驟
如要進一步瞭解儲存空間選項和 AI/機器學習工作負載,請參閱下列資源:
- 瞭解如何運用 Managed Lustre 最佳化 AI 和機器學習工作負載。
- 進一步瞭解如何使用 Cloud Storage FUSE 最佳化 AI 和機器學習工作負載。
- 瞭解AI 和機器學習觀點, 請參閱 Google Cloud Well-Architected Framework。
- 如需更多參考架構、圖表和最佳做法,請瀏覽 Cloud 架構中心。
貢獻者
作者:Samantha He | 技術文件撰稿者
其他貢獻者:
- David Stiver | 產品群經理
- Dean Hildebrand | 技術長辦公室技術總監
- Kumar Dhanagopal | 跨產品解決方案開發人員
- Sean Derrington | 儲存空間產品群對外產品經理