0

私はApache Helixが動的なクラスタ拡張/縮小(物理ノードの追加/失敗/削除など)を可能にすることを理解します。しかし、単一の物理ノードが単一のパーティションレプリカを処理できない場合は、パーティションを2つに分割する必要があります。ワークロードをあらかじめ見積もる必要があることを理解しているので、十分な数のパーティションを前もって設定することができます。しかし、予期せぬほどトラフィックが増加するため、このような事前推定はほとんど不可能です。 Helixがアウト・オブ・ボックスの再パーティショニングをサポートしているかどうかは誰にでも分かりますか?再分割機能を追加するためにそれをカスタマイズする必要がある場合は、その努力がどれほど大きく、原則的にそれを行うかです。私は簡単な見積りをしたい。ありがとうApache Helixはパーティション分割とマージをサポートしていますか?

答えて

0

Helixは、パーティションの分割/マージをサポートしていません。根底にあるシステムを理解することなくこれをサポートする一般的な方法を思いつくことはできませんでした。

これまで述べてきたように、Helixが提供するプリミティブを使用してカスタムソリューションを構築することは可能です。システムに関する追加情報を提供できる場合は、何か提案することができます。

0

私は、多数の(論理的な)パーティションから始め、各ノードに複数のパーティションを割り当てることをお勧めします。サービスがより多くのリソースを必要とするときは、ノードを追加し、既存のノードから新しいノードにいくつかのパーティションを移動します。 たとえば、50ノードから始めるとしたら、ワークロードの領域を50000論理パーティションに分割し、各ノードに1000パーティションを割り当てます。そして、例えば75ノードまで増加すると、再分配されます。したがって、ノードあたり667のパーティションになります。 実際のシナリオによっては、再配置されたパーティションを最小限に抑えることができます(たとえば、一貫したハッシングアルゴリズムを使用するなど)。

関連する問題