Назад | Перейти на главную страницу

Cassandra - перемещение данных с нескольких узлов на один узел

Мне нужно скопировать данные с 3 узлов на один узел. Я знаю о команде моментального снимка, и мне удалось успешно скопировать данные из кластера, где каждый узел имел 100% данных (полная репликация), в одноузловой кластер.

Но в этом случае у меня есть кластер с 3 узлами, где данные делятся: 50% -25% -25%.

Если я создам моментальный снимок на каждом «исходном» узле и восстановлю на одном «целевом» узле, все ли будет работать правильно?

Вы не должны так поступать.

Я бы изменил свой коэффициент репликации на 1 для своих пространств ключей, а затем запустил nodetool decommission на узлах, которые я хочу удалить, по одному. Чтобы проверить статус вывода из эксплуатации, посмотрите nodetool status и nodetool netstats.

Более подробную информацию о выводе из эксплуатации можно найти здесь: http://docs.datastax.com/en/cassandra/2.0/cassandra/tools/toolsDecommission.html

Таким образом вы позволяете Cassandra передавать данные и уверены, что не допустите ошибок.

Также не забудьте проверить, нужно ли вам изменять коэффициент согласованности в клиентском приложении.