2017-06-17 6 views
1

私たちのカサンドラクラスタにノードを追加する必要がありますが、docに基づいて適切にこれを行う方法を私には不明である:新しいノードを追加するときにCassandraのデータを再シャッフルする方法は?

http://docs.datastax.com/en/cassandra/2.1/cassandra/operations/ops_add_node_to_cluster_t.html

クラスタがvノードを使用している場合どのように私は知っていますか? num_tokens 256と一緒に使用しています.3つのノードしか持っていません。あなたが持っているかどうかは、私たちがvnodeを持っていることを意味します。

データを簡単に再シャッフルする方法はありますか?

答えて

2

デフォルトでCassandraバージョン1.2以上では、ノードトークンを複数のサブトークンに分割して、すべてのノードに対して均等にデータを分散させるvnode(256 vnode)を使用します。

各vnodeにトークンが割り当てられます。そのため、構成ファイルに割り当てられているvnode数やnodetoolを使用しているvnode数を調べることができます。

「num_tokens」は、そのカサンドラノードのvノードの数を示しています。

(または)

は、各ノードのクラスタ内のトークンが一覧表示されますnodetoolリングコマンドを実行します。

nodetool ring 

クラスタのバランスをとるvノードを使用することをお勧めします。以前のバージョンの1.1より小さいCassandraにはvnodeがありませんでした。したがって、トークンを生成するために使用し、cassandra.yamlファイルで使用可能なinitial_tokenパラメータで設定しました。

したがって、バージョン1.2以降のCassandraでは、vnodesを使用するだけでクラスタのバランスをとることができ、データを再シャッフルする必要はありません。

関連する問題