Два Кластера каждый с 12 узлами - база данных Кассандры

Я начал работать над проектом, в котором я использую Cassandra database,

Наши производственные администраторы баз данных имеют настройку two cluster и каждый кластер будет иметь 12 nodes,

Я буду использовать Pelops client читать данные из базы данных Cassandra. Теперь я думаю, что это лучший способ создать Cluster класс с использованием Pelops client например, сколько узлов я должен добавить к Pelops при создании кластера?

Мое понимание было создать кластер с помощью pelops client со всеми 24 nodes как у меня будет два кластера каждый с 12 узлами? Это правильный подход?

Если нет, то как мы решаем, какие узлы (из каждого кластера) я должен добавить при создании кластера с помощью клиента Pelops?

String[] nodes = what nodes I should use from two clusters? And how many nodes I should add?; 

int port = cfg.getInt("cassandra.port"); 

boolean dynamicND = true; // dynamic node discovery 

Config casconf = new Config(port, true, 0); 

Cluster cluster = new Cluster(nodes, casconf, dynamicND); 

Pelops.addPool(Const.CASSANDRA_POOL, cluster, Const.CASSANDRA_KS);

Кто-нибудь может мне помочь с этим?

Любая помощь будет оценена.

1 ответ

Решение

Я постараюсь лучше объяснить комментарий в другом посте. Мой совет, чтобы дать pelops только семена каждого кластера. Предполагая, что у вас есть 2 начальных числа для каждого кластера, я бы использовал эти 4 узла для создания своего пула.

Вы используете Pelops - из документации Доминика Уильямса (создателя Pelops):

Чтобы создать пул, необходимо указать имя, список известных узлов контактов (библиотека может автоматически обнаруживать другие узлы в кластере, но в конце заметки), сетевой порт, который прослушивают узлы, и политика, которая контролирует такие вещи, как количество соединений в вашем пуле. - так что нет необходимости передавать весь список узлов.

Из документации Кассандры:

Узлы Кассандры обмениваются информацией друг о друге, используя механизм, называемый Сплетней, но для того, чтобы шарик перевернулся, недавно запущенный узел должен знать хотя бы один другой, это называется Семя. Обычно выбирают небольшое количество относительно стабильных узлов, чтобы служить вашими семенами, но здесь нет строгого правила

Я работаю с Pelops с 3-х лет (начал с Cassandra 0.6, сейчас 1.0.6), и подход с использованием только семян в качестве списка узлов... работает отлично!

пара советов:

1: если вас беспокоит состояние соединений и кольца, вы можете написать класс, который выполняет "случайные запросы", используя EACH_QUORUM CL для проверки соединений, и класс, который использует Java-классы Nodetool для проверки состояния кольца

2: если вы выполняете удаление в cassandra, помните о важности восстановления nodetool ( http://wiki.apache.org/cassandra/Operations)

С уважением, Карло

Другие вопросы по тегам