2016-06-07 2 views
4

После размещения question и чтения this и that статьи, я до сих пор не понимаю, отношения между этими тремя осуществлением операций Cassandra Уплотнительная против Ремонт против субботника

  • задач по уплотнению Cassandra
  • ремонт nodetool
  • nodetool очистка

Задача ремонта может быть обработана во время выполнения задачи уплотнения или очистки выполняется задача уплотнения? Очистка - это операция, которая должна выполняться еженедельно в качестве ремонта? Почему операция восстановления должна выполняться вручную, и это не относится к поведению Кассандры по умолчанию?

Каковы основные правила для здорового обслуживания кластеров?

ответ

12

A cleanup - это уплотнение, которое просто удаляет вещи за пределами диапазона токенов. A repair имеет «Удовлетворение валидации», чтобы построить дерево merkle для сравнения с другими узлами, поэтому часть nodetool repair будет иметь уплотнение.

Можно ли выполнить задачу восстановления во время выполнения задачи уплотнения или выполнить очистку во время выполнения задачи уплотнения?

Существует общий бассейн для сжатий через нормальные сжатия, ремонт, уборки, скрабы т.д. Это установка concurrent_compactors в cassandra.yaml, что по умолчанию в комбинацию количества ядер и каталоги данных: https://github.com/apache/cassandra/blob/cassandra-2.1/src/java/org/apache/cassandra/config/DatabaseDescriptor.java#L572

Очистка - это операция, которая должна выполняться еженедельно как ремонт?

нет, только после топологии меняется действительно.

Зачем нужна операция по ремонту вручную и не в поведении Кассандры по умолчанию?

Его руководство, потому что его требования могут сильно отличаться от ваших данных и требований gc_grace. https://issues.apache.org/jira/browse/CASSANDRA-10070 приносит его в Кассандру, хотя в будущем он будет автоматическим.

Каковы основные правила безопасного обслуживания кластеров?

Я (мнение) сказать:

  • Регулярное резервное копирование (в зависимости от требований и потери приемлемыми данные, это может быть что угодно от еженедельно/ежедневно постоянно с инкрементный).
    • Это как раз для «внутренних» ошибок («Opps i deleted customer») в качестве отключений. Даже при сильной мульти-dc-репликации вам нужны минимальные резервные копии.
  • Убедитесь, что ремонт завершен для всех таблиц, удаленных хотя бы один раз в течение времени gc_grace этих таблиц.
  • Метрическое и хранилище журналов очень важно, если вы хотите иметь возможность отлаживать проблемы.
+0

Хорошее резюме! Спасибо. – Rada

Смежные вопросы