データのサブ範囲の高速リペア
範囲全体でnodetoolリペア操作を実行する代わりに、クラスターでデータのサブ範囲をリペアします。
クラスター内データのサブ範囲をリペアすることは、nodetoolリペア操作を全範囲にわたって実行するより高速です。これは、nodetoolリペア操作中に複製されるデータすべてのインデックスが再作成される必要があるからです。データのサブ範囲をリペアするときには、インデックスを再作成する必要があるデータの量が少なくて済みます。
サブ範囲をリペアするには
クラスターのローリング・リペアとして、一度に1つのノードで以下の手順を実行します。
- dsetool list_subrangesコマンドを実行します。その際、サブ範囲あたりのおおよその行数、ノードのパーティション範囲の最初(トークン)、およびパーティション範囲の最後を使用します。
dsetool list_subranges my_keyspace my_table 10000 113427455640312821154458202477256070485 0
出力にサブ範囲が列挙されます。Start Token End Token Estimated Size ------------------------------------------------------------------------------------------------ 113427455640312821154458202477256070485 132425442795624521227151664615147681247 11264 132425442795624521227151664615147681247 151409576048389227347257997936583470460 11136 151409576048389227347257997936583470460 0 11264
- 以前のステップの出力をnodetool repairコマンドへの入力として使用します。
nodetool repair my_keyspace my_table -st 113427455640312821154458202477256070485 -et 132425442795624521227151664615147681247 nodetool repair my_keyspace my_table -st 132425442795624521227151664615147681247 -et 151409576048389227347257997936583470460 nodetool repair my_keyspace my_table -st 151409576048389227347257997936583470460 -et 0
アンチエントロピー・ノード・リペアが、パーティション範囲の最初から最後まで実行されます。