ストリーミングシステムの水平スケーリング
ストリーミングの基礎概念
Mike Metzger
Data Engineer
水平スケーリングの復習
- 「スケールアップ」ではなく、スケールアウト
- 高速・高性能化ではなく、台数を増やして処理能力を上げるのが一般的
- 並列化が容易な場合に最適
- タスクを簡単に分割できる
- 例: 互いに依存しない大量の画像処理
ストリーミングでの水平スケーリング
- ストリーミング処理は通常、遅延が最小
- ワーカー間のデータ転送が難しくなることがある
- 1つのパイプライン内でストリーム全体を処理するのが最適
- そのパイプラインの複製を作る
パイプラインの複製
- 事象が発生すると、最初にパイプラインへ流入
- 関連タスクは完了までそのパイプライン内で自己完結
- パイプラインを増やしてスケール
- パイプライン内での垂直スケールも可能
追加の考慮事項
- 他のコンポーネントが必要になる場合あり
- ロードバランサ/ディレクタ
- いずれボトルネックに到達
- ストリーミングパイプラインの短縮を検討
Preparing Video For Download...