Bringing together the Apache Cassandra experts from the community and DataStax.

Want to learn? Have a question? Want to share your expertise? You are in the right place!

Not sure where to begin? Getting Started

 

question

ilmir.galiullov avatar image
ilmir.galiullov asked Erick Ramirez action

Изменение replication factor на живом кластере кассандра

Подскажите пожалуйста как может повлиять на кластер увеличение фактора репликации на кейспейсах на ходу и что нужно для этого сделать кроме alter... чтобы корректно изменить параметр

replication
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

1 Answer

Erick Ramirez avatar image
Erick Ramirez answered ilmir.galiullov commented

После того, как вы увеличите replication factor с помощью команды ALTER KEYSPACE, вам нужно запустить rolling repair на keyspace по одному узлу за раз с:

$ nodetool repair -pr -- keyspace_name

Запуск repairs временно повлияет на производительность кластера.

Также будет небольшое влияние на производительность, когда ваше приложение впервые читает раздел, поскольку есть вероятность, что read-repair запустится в фоновом режиме для repair для новой реплики, которая еще не имеет данных. Это произойдет только один раз, пока все узлы не будут отремонтированы.


After you increase the replication factor with the ALTER KEYSPACE command, you need to run a rolling repair on the keyspace one node at a time with:

$ nodetool repair -pr -- keyspace_name

Running repairs will temporarily affect the performance of the cluster.

There will also be a slight performance impact when your application reads a partition for the first time since there is a chance that a read-repair will get started in the background to repair the new replica which does not have the data yet. This will only happen once until all nodes have been repaired. Cheers!

2 comments Share
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

На сколько я знаю на cassandr выше 3.0 по умолчанию установлено инкрементальное восстановление? Отработает ли корректно nodetool repair -pr -- keyspace_name ?

0 Likes 0 ·

Начиная с Cassandra 2.2, repair по умолчанию равен incremental.

Но если вы уже используете -pr flag, разницы не будет. Если вы запускаете incremental repairs, использование -pr flag просто будет anti-compact для SSTables, который уже был отмечен как repaired, и будет repair для данных.


From Cassandra 2.2, repair defaults to incremental.

But if you are already using -pr flag, there will be no difference. If you are running incremental repairs, using -pr flag will simply anti-compact the SSTables which have already been marked as repaired and will repair the data.

0 Likes 0 ·