Conceptos Básicos
Dirigentは、従来のオーケストレーションシステムに依存せずに、FaaSアプリケーションのための新しいクラスター管理アーキテクチャを提案する。Dirigentは、状態管理の簡素化、クリティカルパスでの永続化の排除、モノリシックなコントロールプレーンとデータプレーンの設計により、高スループットでの関数スケジューリングを実現する。
Resumen
本論文は、Function as a Service (FaaS)プラットフォームのクラスター管理に関する新しいシステムアーキテクチャ「Dirigent」を提案している。
現在のFaaSクラスター管理システムは、Kubernetesなどの既存のオーケストレーションシステムの上に構築されているが、これらは高いサンドボックス作成レートに対応できず、スケジューリング遅延が問題となっている。
Dirigentは、FaaSワークロードに特化した設計原則に基づいて構築されている。具体的には以下の3つの原則に基づいている:
-
内部クラスター管理抽象化の簡素化
- Dirigentは、Functionやサンドボックス、ワーカーノードなどの4つの基本オブジェクトのみを管理する。これにより、状態管理の量と複雑さを大幅に削減している。
-
クリティカルパスでの永続化の排除
- Dirigentは、サンドボックス作成時の状態更新を永続化しない。これにより、スケジューリングスループットを最大化できる。
-
モノリシックなコントロールプレーンとデータプレーン
- Dirigentは、コントロールプレーンとデータプレーンを統合したモノリシックなアーキテクチャを採用している。これにより、コンポーネント間のRPCオーバーヘッドを削減し、ウォーム起動時のレイテンシを最小化できる。
これらの設計原則により、Dirigentは従来のFaaSクラスター管理システムと比べて、大幅な性能向上を実現している。具体的には、2500件/秒の高いサンドボックス作成スループットと、AWS Lambdaと比べて2.79倍高速なスケジューリングレイテンシを達成している。また、コントロールプレーン、データプレーン、ワーカーノードの障害に対しても高い耐障害性を示している。
Estadísticas
Dirigentは、2500件/秒のサンドボックス作成スループットを達成し、Knativeの1250倍の性能を発揮する。
Dirigentは、Azure Functionsのトレースに対して、AWS Lambdaと比べて99パーセンタイルのスケジューリングレイテンシを2.79倍改善する。
Citas
"Dirigentは、従来のオーケストレーションシステムに依存せずに、FaaSアプリケーションのための新しいクラスター管理アーキテクチャを提案する。"
"Dirigentは、状態管理の簡素化、クリティカルパスでの永続化の排除、モノリシックなコントロールプレーンとデータプレーンの設計により、高スループットでの関数スケジューリングを実現する。"