fluid-cloudnative/fluid

Fluid, elastic data abstraction and acceleration for BigData/AI applications in cloud. (Project under CNCF)

何を解決するか

Fluidは、Kubernetes上で実行される大規模データおよびAIトレーニングジョブにおけるデータアクセスに関連するパフォーマンスのボトルネックを解決します。分散システム全体でデータセットを管理・キャッシュすることで、TensorFlowやSparkなどのコンピューティングエンジンがリモートストレージからデータを待つ時間(待機時間)を短縮し、データアクセスを高速化します。

仕組み

FluidはKubernetesネイティブな分散データセットオーケストレーターおよびアクセラレーターとして機能します。以下の2つの主要な概念を導入しています:

  • Dataset:コンピューティングエンジンが使用する関連データの論理的グループ。Fluidはストレージソースにかかわらず、これらのデータセットに対して一貫した抽象化を提供します。
  • Runtime:隔離、共有、バージョン管理を強制し、データセットのライフサイクル全体でデータ操作を扱うインターフェースを提供するコンポーネント。これによりデータアクセラレーションが実現されます。

システムは、データキャッシュ技術と弾性スケーリング、データアフィニティスケジューリングを組み合わせることで、データを計算タスクに物理的に近づけ、高いパフォーマンスを確保します。

対象ユーザー

Kubernetes上でAIおよび大規模データワークロードを管理する開発者やプラットフォームエンジニアで、トレーニングジョブや分析処理におけるデータ読み込み速度とデータアクセスパフォーマンスの最適化を必要とする方々。

主な特徴

  • データセット抽象化:複数のストレージソースからのデータセットに対して一貫した抽象化と監視機能を提供。
  • スケーラブルなキャッシュランタイム:異なるランタイムおよびサードパーティストレージシステム間でのデータ操作に統一されたアクセスインターフェースを提供。
  • 自動化されたデータ操作:システム統合を容易にするさまざまな自動化モードをサポート。
  • 弾性とスケジューリング:キャッシュと弾性スケーリング、データアフィニティスケジューリングを統合し、パフォーマンスを向上。
  • プラットフォーム非依存:ネイティブ、エッジ、Serverless Kubernetesクラスタ、マルチクラスタ環境をサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト