Пользовательская репликация данных в Кассандре? - PullRequest
4 голосов
/ 22 декабря 2010

Мне интересно, как я могу реализовать собственную стратегию репликации данных, в которой у меня был бы полный контроль над репликацией каждой записи (это можно сделать, переопределив Partitioner и / или ReplicatePlacementStrategy?).

Я хочу иметь возможность реплицировать только несколько избранных записей, оставляя остальные в покое. Итак, в основном я хочу сказать: «Реплицировать эту запись через ВСЕ узлы» или «Реплицировать эту запись только через два узла» или «Не копировать записи вообще!»

Если такая вещь невозможна, то проще ли тогда просто использовать уровни согласованности ONE / ALL / QUORUM / etc при вызове записи в коде?

Очевидно, я новичок в Кассандре и до конца не обернулся. Любое разъяснение было бы здорово!

1 Ответ

3 голосов
/ 22 декабря 2010

NetworkTopologyStrategy позволяет вам управлять этим для каждого пространства ключей.Если вам действительно это нужно для каждого ключа, вам нужно переопределить метод calcNaturalEndpoints в пользовательской стратегии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...