Cassandraを使っているときに、容量が足らない、負荷が高いなどの理由でノードを増やしたい場合があります。また、負荷が長期的に落ち着き、予算を抑えるためにノードを減らすこともあります。 今回はノードの追加と削除をやってみます。 トークンの算出 ノードを追加するケースはリングの負荷状態によって、大きく分けて 保存するデータのハッシュやアクセスに偏りが大きく、特定ノードの容量または処理の負荷が高いので負荷集中を分散したい。 リング全体の容量、または処理の負荷が高いので、全体的に数を増やして均一に分散したい。 の2通りかと思います。 1の場合、負荷の高いノードの近くにノードを追加し、ノードの均一化はせずに特定のトークンの範囲にノードを集中させたほうがよさそうです。 2の場合、ノードを追加したら、全ノードが均等にリング上に再配置したほうが全体としての負荷は抑えられそうです。 今回は1の場合を例