AI対応のCephストレージ
by Canonical on 7 May 2024
オープンソースのCephストレージでAIビジョンを強化
今やあらゆる企業がAIの活用に関心を持っています。既存のデータから業務の分析情報や利益を引き出し、コストを削減できることから、AI技術は変化に消極的な企業にさえ驚くほどの速度で広がっています。
しかしこのような情報、節約、利益をもたらすAIシステムは大量のデータへのアクセスに依存します。性能と信頼性の高いストレージシステムがなければ、たとえ最先端のAIソリューションでも速やかに結果は出せません。しかも新しいAI関連のワークロードが既存のビジネスアプリケーションに影響を与えてはなりません。どちらも協調して動作する必要があります。
このブログ記事では、AIソリューションが必要とするストレージシステムおよび使用するデータの種類について検討します。また、AI関連のデータと標準的なビジネスデータの両方を保存する選択肢の1つとしてCephをご紹介します。
AIが必要とするストレージ
新しいAIアプリケーションは、ストレージシステムにさまざまな負担をかけ、要件を課します。ここでは新しいAIワークロードに対応するためにストレージシステムに何が必要かを説明します。
高いスループット
AIワークロードは多くのデータに高速でアクセスする必要があります。まず未処理のデータを読み、次に処理した出力を書き込みます。 数百GBps、果ては1TBps以上が求められることも少なくありません。
Cephなどのストレージソリューションは、キャッシュ機能の追加によって大量の書き込み処理に対応し、スケールアウトによってシステムスループット全体を引き上げます。
拡張性
未来のAIインフラストラクチャが現在のAIインフラストラクチャと同じとは限りません。ストレージシステムは、容量やスループットの拡張ニーズだけでなく、ハードウェアを組織のインフラストラクチャの他の場所で再利用する場合にはスケールダウンにも対応する必要があります。
柔軟性
拡張性に続き、ストレージシステムにはさまざまなAIワークロードに対応する柔軟性も必要です。すべてのデータが同等ではありません。他より重要なデータもありますし、時が経って価値が変化する場合もあります。たとえば銀行の取引データについて言えば、利用者は最初の30~60日に残高の確認や月末の明細表示を利用することが多く、3年後はそれほどでもありません。それでもデータを保管し、必要なときにアクセスできるようにすることは重要です。
したがってストレージシステムは複数のストレージ層を提供してこのニーズに対応する必要があります。Cephのようなストレージシステムではユーザーが異種のハードウェアを組み合わせ、システムニーズに応じて混用することができます。
信頼性
ストレージシステムの最も重要な役割はデータの保存です。性能が高くてもデータ保存の信頼性が低いストレージシステムは役立たずです。データを生成あるいは処理しても後で取得できないなら意味がありません。Cephのようなソリューションではユーザーが保護方針に応じて複製やイレイジャーコーディングを選択できます。ビジネス価値と保存コストのバランスを取るシステム構成が必要だからです。
AIデータの種類
質の高いストレージシステムに必要な特性を理解したところで、AIアプリケーションの一般的なデータの種類を考えてみましょう。AIデータは1種類ではありません。AIモデルの開発、トレーニング、デプロイのさまざまな段階で複数の種類のデータが使用されます。
未処理および前処理済みのデータ
これは、チャットツール、メールアーカイブ、CCTVの録画、サポートコールの録音、自動運転車のテレメトリなど、あらゆるアプリケーションやシステムから抽出/取得されたソースデータです。データには、データベースのテーブル、テキスト、画像、音声、動画などあらゆる形態があります。
システムから抽出されたこのようなデータは一般に、トレーニングに利用しやすいよう前処理されます。前処理によって後で重複する処理を省くこともでき、時間とコンピューティングリソースが節約されます。規制コンプライアンスの目的でデータを匿名化するデータセット前処理もあります。
トレーニング用のデータセット
トレーニング用のデータセットとは一般に、AIモデルのトレーニングに使用される前処理済みのデータです。このデータセットの優れた点は、期待されるモデル出力がすでに定義されていることです。これらのデータセットを保存すれば、モデルの改良やパフォーマンスの評価に使用できます。
モデル
AIモデルの構造(階層やノード)は、モデルを将来的に再デプロイできるよう確実に保存する必要があります。また、AIモデルにはモデルのトレーニング中に調整可能なパラメータや重みが含まれます。将来的にこれらの変数を調整すれば、モデルの微調整や推論ロールでのデプロイが可能となります。
結果
これは、インポート、前処理、トレーニング、デプロイの全段階で最も重要です。出力、つまり推論データは一般に最もビジネスに有用なデータであり、いつでも使えるよう保存する必要があります。監査や将来の改良のために長く保持する場合もあります。
AIストレージのオープンソースオプション
求めるものすべて(コスト、速度、柔軟性、拡張性、多種多様なデータセットや種類のサポート)を備えたストレージソリューションはなかなかありません。プロプライエタリのストレージは柔軟性に欠け、パブリッククラウドサービスは事業の成長とともにコストがかさみます。この2つの分野ではインハウスのオープンソースソリューションが最適解となるでしょう。
CanonicalのCephは、エッジから大規模なAIモデリングまであらゆる規模とワークロード、そしてあらゆるストレージプロトコルに対応するストレージソリューションです。パフォーマンス、容量、アクセスニーズの異なる混合ワークロードもすべて1つのクラスターで対応できます。Cephのスケールアウト性を生かし、ハードウェアを段階的に追加してパフォーマンスや容量のニーズを満たすことも可能です。
ブロック
ブロックストレージが必要な場合は、拡張性の高いマルチパスネイティブのブロックトランスポートであるRADOS Block Device(RBD)プロトコルを使用できます。レガシー環境をサポートするため、ゲートウェイ経由でiSCSIにも対応します。将来のリリースではNVMeoFもサポートされる予定です。
ファイル
共有ファイルのストレージには、CephFS(CephのネイティブPOSIX互換プロトコル)またはNFSプロトコル(ゲートウェイ経由)のいずれかを使用します。
オブジェクト
Cephクラスターでは、S3 APIとSwift APIの両方と互換性のあるオブジェクトストレージAPIも完全にサポートされています。
その他のリソース
- Cephとは
- ホワイトペーパー – 企業向けのソフトウェア定義ストレージに関するガイド
- ブログ – Cephのセキュリティ機能でデータを保護
- ブログ – CentOSのサポート終了(EOL)– Cephストレージへの影響は?
- ブログ – MicroCephを使用したエッジストレージ
その他の情報
Canonicalのオープンソースインフラストラクチャソリューションについてお読みください。
ニュースレターのサインアップ
関連記事
Ubuntu ProをNutanixのベアメタルKubernetesで提供
NutanixとCanonicalのパートナーシップ拡大によりコンテナ化されたワークロードの選択肢が増加 Enterprise Kubernetes®は、柔軟性の高いマルチアーキテクチャモデルへと進化しつつあります。AI/MLやデータ集約型のワークロードが膨大なハードウェアスループットを必要とする近年、組織はクラウドプラットフォームの安定性を維持しながら、ベアメタルのパフォーマンスを求めています。 このためNutanixとCanonicalは、このたび発表されたNKP Metalソリューションも含め、ベアメタルで実行するNKP(Nutanix Kubernetes Platform)インスタンスでもUbuntu Proを利用可能にしました。もともと2025年に発表されたパ […]
Ubuntu 26.04 LTSのセキュリティ最新情報
Ubuntu 26.04 LTSは、Canonicalにとって最もセキュリティを重視したLTSリリースです。単に機能を追加しただけでなく、システムのあらゆる層で同時にセキュリティの基準を引き上げ、全体的に強化しました。しかも既存の環境を壊したり、手動での介入が増えたりすることはありません。セキュリティの心臓部、つまりデフォルト設定に注力することで、CanonicalはUbuntuのセキュリティを新しい形で強化しました。この記事では、Ubuntu 26.04 LTSの新しいセキュリティ機能について概説します。 Ubuntu 26.04 LTS は、デスクトップ、サーバー、コンフィデンシャルVM、クラウドイメージ、エッジシステムでLinuxを運用する上で、今後10年間にわたっ […]
JammyからResoluteまで:Ubuntuのツールチェーンの進化
新しいツールチェーンのバージョン、devpack、開発体験を改善するワークフローをご紹介します。 Ubuntuのツールチェーンの進化は、単にGCC、LLVM、Pythonを提供することではありません。明確な目的を持つOpenJDKのバリアント、タスクに特化したdevpack、FIPS適合のツールチェーン、そしてsnap(新しい.NET snapやSnapcraftプラグインなど)の開発も含みます。このような改善により、これまで半日かかっていたセットアップが1〜2個のコマンドで済みます。これは、Ubuntu上でフレームワークやアプリケーションを開発する者にとって、まさに「摩擦のない」開発体験です。 このブログでは、Ubuntuの過去4年間のLTSリリースにおける変更点と今後 […]