Azure インフラストラクチャ (IaaS) での AI ワークロードに対するストレージの推奨事項
この記事では、Azure インフラストラクチャ (IaaS) で AI ワークロードを実行している組織のストレージに関する推奨事項を紹介します。 Azure インフラストラクチャ上の AI ワークロードのストレージ ソリューションは、AI モデルのトレーニングや推論に固有のデータ ストレージ、アクセス、転送の要求を管理できるものでなければなりません。
AI ワークロードでは、効率的なデータ取得とデータ処理のために、高スループットと低遅延が求められます。 また、分散環境全体で、正確かつ再現可能な結果を保証するために、データのバージョン管理と一貫性を保つ仕組みも必要です。 適切なストレージ ソリューションを選択する際には、データ転送時間、待機時間、パフォーマンス要件、既存システムとの互換性などの要因を考慮してください。
アクティブなデータにはファイル システムを使用します。 AI ジョブでアクティブに使用または生成される "ジョブ固有/ホット" データを格納するファイル システムを実装します。 このソリューションは、待機時間が短く、スループットが高いため、リアルタイムのデータ処理に最適です。 これらの機能は、AI ワークフローのパフォーマンスを最適化するために不可欠です。 Azure には、Azure インフラストラクチャでの AI モデルのトレーニングと推論をサポートする 3 つの主要なファイル システム ソリューションがあります。 適切なファイル システムを選択するには、次の推奨事項に従います。
データ転送時間と待機時間を最小限に抑えるには、Azure Managed Lustre を使用します。 Azure Managed Lustre は、並列ファイル システム機能によりハイ パフォーマンスを提供し、Azure 統合により管理を簡素化します。 使用量に応じたストレージ コストで費用対効果が高い上に、Blob Storage からの選択的なデータ インポートが可能になるため、データ処理が最適化されます。
AI ワークロードにエンタープライズ レベルの機能とパフォーマンスが必要な場合は、Azure NetApp Files を使用します。 Azure NetApp Files は、ミッションクリティカルなアプリケーションに最適な、高い信頼性とパフォーマンスを提供します。 Azure NetApp Files は、NetApp インフラストラクチャに既存の投資がある場合に役立ちます。 ハイブリッド クラウド機能を使用する場合や、ストレージ構成をカスタマイズして微調整する必要がある場合に便利です。
パフォーマンスが最も優先される場合は、ローカル NVMe/SSD ファイル システムを使用してください。 BeeGFS オンデマンド (BeeOND) などのジョブ専用の並列ファイル システムを使用して、コンピューティング (ワーカー ノード) のローカル NVMe を集計します。 これらは、ジョブ実行中に一時的な高性能ファイル システムを作成するために、コンピューティング ノード上で直接動作します。 これらのシステムは、超低遅延と高スループットを提供するため、ディープ ラーニング トレーニングやリアルタイム推論などの I/O 集中型アプリケーションに最適です。
非アクティブなデータを Azure Blob Storage に転送します。 ジョブが完了したら、非アクティブなジョブ データを Azure Managed Lustre から Azure Blob Storage に転送し、長期的に費用対効果の高いストレージを実現します。 Blob Storage には、さまざまなアクセス層を備えたスケーラブルなオプションが用意されており、必要に応じてすぐに使用できる状態を維持しながら、非アクティブまたはアクセス頻度の低いデータを効率的に格納できます。
モデル トレーニングにチェックポイント処理を実装します。 トレーニングの重みやパラメーターなどのモデルの状態を、500 回の反復ごとなど、一定の間隔で保存するチェックポイント メカニズムを設定します。 このチェックポイント データを Azure Managed Lustre に保存すると、以前に保存した状態からモデルのトレーニングを再開できるため、AI ワークフローの柔軟性と回復力が向上します。
低コストのストレージ層へのデータ移行を自動化します。 Azure Blob Storage ライフサイクル管理ポリシーを、アクセス頻度の低い、古いデータをクール レベルや Archive レベルなどの低コストのストレージ層に自動的に移行するように構成します。 この方法によって、ストレージ コストを最適化しながら、重要なデータには引き続き、必要に応じてアクセスできるようになります。
分散環境間でデータの一貫性を確保します。 Azure Managed Lustre と Azure Blob Storage 間の同期を設定することで、分散 AI ワークロード間でのデータの一貫性を確保します。 この同期により、データにアクセスするすべてのノードが同じ一貫したバージョンで動作することが保証され、分散環境におけるエラーや不一致が防止されます。
データのバージョン管理を有効にして再現性を高めます。 Azure Blob Storage でバージョン管理をアクティブ化し、データセットとモデルの変更を経時的に追跡します。 この機能により、ロールバックが容易になり、再現性が向上し、コラボレーションがサポートされます。 データとモデルに対する変更の詳細な履歴が保持され、必要に応じて以前のバージョンを比較・復元することができます。