Проблема схемы Cassandra в 2.1.14

Мы столкнулись со странной проблемой при изменении таблицы. Мы используем метод sync_table () драйвера Python Cassandra для синхронизации из нашей модели (определенной в файле py) с Cassandra. Кластер представляет собой 20 узлов, подвергающихся приличной нагрузке (все узлы в диапазоне от 50 до 70% максимального использования).

Когда схема синхронизируется с использованием драйвера Python Cassandra, внутри выполняется команда «ALTER TABLE ADD». В конкретной таблице, когда мы добавили семь новых столбцов, мы заметили это странное поведение

  • Команда DESCRIBE TABLE показывает 3 или 4 из 7 новых созданных столбцов. Однажды он показал все 7 столбцов в выводе DESCRIBE TABLE.

    • Но в выводе select * новые столбцы не отображаются.

Непоследовательное поведение. Мы удалили столбцы вручную, а затем повторно синхронизировали схему. Каждый раз, когда проблема появляется, когда команда выбора не показывает несколько из 7 столбцов.

Есть указатели для устранения этой проблемы? Это из-за нагрузки на узлы Кассандры?

Установка Apache Cassandra на Mac OS
Установка Apache Cassandra на Mac OS
Это краткое руководство по установке Apache Cassandra.
1
0
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Наиболее вероятная проблема заключается в том, что вы столкнулись с проблемой согласования схемы из-за выполнения многих команд изменения схемы.

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

Спасибо @alex. Это объясняет проблему. Я постараюсь вернуться.

Firdousi Farozan 07.09.2018 06:09

Это действительно было проблемой. Я использовал WhitelistRoundRobinPolicy только с первым узлом cassandra в кластере.

Firdousi Farozan 09.09.2018 10:21

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