Репликация Cassandra для системных схем при добавлении нового центра обработки данных - PullRequest
0 голосов
/ 04 мая 2018

Официальная документация Кассандры гласит, что:

Настройте пространство ключей и создайте новый центр обработки данных:

Используйте ALTER KEYSPACE, чтобы использовать NetworkTopologyStrategy для следующих пространств клавиш:

  • Все созданные пользователем
  • system: system_distributed и system_traces
  • system_auth и dse_security, см. Раздел Настройка репликации пространства ключей system_auth и dse_security.

Этот шаг необходим для нескольких кластеров центра обработки данных, поскольку для перестроения nodetool (10) требуется копия этих пространств ключей в указанном исходном центре данных.

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

А как насчет пространства ключей system_schema?

На основании документации содержит информацию о пользовательских

  • типов,
  • агрегаты,
  • функций

, а также на

  • триггеров,
  • долговременные записи и репликация на ключевом пространстве
  • пропущенные столбцы и т.д ..

Я полагаю, что все они также должны быть воспроизведены в центрах обработки данных, но я немного подозрительно, почему это вообще не упоминается в документации?

1 Ответ

0 голосов
/ 04 мая 2018

Пространство ключей system_schema (а также system) имеет LocalStrategy в качестве стратегии репликации - в этом случае все изменения применяются только к текущему узлу. Расхождение между схемами выявляется с помощью сплетен и запускает процесс обновления данных.

Вы не должны изменять репликацию для этих пространств клавиш.

...