У меня есть простой одноузловой кластер Cassandra с базовой конфигурацией пространства ключей, который имеет replication_factor=1
В этом пространстве ключей у нас около 230 таблиц. Каждая таблица имеет около 40 столбцов. Количество операций записи в эти таблицы составляет примерно 30 000 операций записи за пять минут только один раз в день. У меня есть около 6 python
рабочих сценариев, которые делают эти записи в одну таблицу за раз, и все они будут продолжать делать эти записи, пока все 230 таблиц не будут записаны в течение дня. Сценарии используют python cassandra-driver
с простым сеансом для выполнения этих записей. Что касается данных, которые здесь пишутся, многие из них nulls
.
Фактически, если я прав, это можно рассматривать как 6 одновременных подключений, создающих 30 тыс. + Записей за пять минут в день.
Я понимаю, как Кассандра пишет и удаляет работу, и знаком с узлами-координаторами и т. Д. Я наблюдаю отслеживание, которое происходит периодически, как описано ниже:
"cassandra/cluster.py", line 2030, in cassandra.cluster.Session.execute (cassandra/cluster.c:38536)
app_nstablebuilder.1.69j772led82k@swarm-worker-gg37 | File "cassandra/cluster.py", line 3844, in cassandra.cluster.ResponseFuture.result (cassandra/cluster.c:80834)
app_nstablebuilder.1.69j772led82k@swarm-worker-gg37 | cassandra.WriteTimeout: Error from server: code=1100 [Coordinator node timed out waiting for replica nodes' responses] message="Operation timed out - received only 0 responses." info={'consistency': 'ONE', 'required_responses': 1, 'received_responses': 0}
Мой вопрос касается того, как подойти к решению этой проблемы. Я не могу проверить, возникла ли проблема из сценариев моих рабочих или из самого кластера Cassandra. Должен ли я замедлять работу моих работников в написании их записей? Должен ли я запустить какую-либо диагностику, чтобы улучшить производительность Cassandra?
Все решения, которые я до сих пор читал, имеют отношение к многоузловым кластерам, и я не смог найти одно для кластера с одним узлом.
Я чувствую, что наш кластер нездоров и что мои усилия должны быть направлены на исправления. Если это так, я не уверен, с чего начать. Может ли кто-нибудь указать мне правильное направление?
Если есть какая-либо дополнительная информация, которую я мог бы предоставить, пожалуйста, дайте мне знать.