7.2. ディストリビューションモードの一貫したハッシュアルゴリズム

Red Hat JBoss Data Grid のハッシュアルゴリズムは、一貫性のあるハッシュに基づきます。従来の一貫性のあるハッシュとは少し異なりますが、この実装には一貫性のあるハッシュという用語がまだ使われています。
分散モードは一貫したハッシュアルゴリズムを使用して、エントリーを格納するクラスターからノードを選択します。一貫したハッシュアルゴリズムは、クラスター内で維持される各キャッシュエントリーのコピー数で設定されます。汎用的な一貫性のあるハッシュとは異なり、JBoss Data Grid で使用される実装ではキー領域が固定セグメントに分割されます。セグメントの数は、numSegments を使用して設定され、クラスターを再起動しても変更できません。キーとセグメントのマッピングも固定されます。クラスターのトポロジーがどのように変わるかに関係なく、キーは同じセグメントに対してマップされます。
パフォーマンスとフォールトトラレンスのバランスを考慮して、各データ項目のコピー数を設定する必要があります。エントリーのコピーが多すぎるとパフォーマンスが低下し、コピーが少なすぎるとノードの障害時にデータを損失する可能性があります。
各ハッシュセグメントはオーナーと呼ばれるノードのリストにマップされます。最初のオーナー (プライマリオーナーとも呼ばれます) は多くのキャッシュ操作 (ロックなど) で特殊な役割を担うため、この順序は重要です。他のオーナーはバックアップオーナーと呼ばれます。セグメントとオーナーのマッピングにはルールがありませんが、ハッシュアルゴリズムにより各ノードに割り当てられたセグメントの数が同時に分散され、ノードがクラスタに参加した後やクラスタから脱退した後に移動する必要があるセグメントの数が最小化されます。