Будет ли Кассандра возвращать строки надгробий в качестве допустимых строк? - PullRequest
0 голосов
/ 28 июня 2018

Моя идея - добавить строки в Cassandra с помощью TTL = 15 minutes, чтобы я мог загружать данные в реальном времени (now - 15 minutes, now) без сохранения временных отметок и т. Д. Меня беспокоит то, что строки с истекающим TTL будут помечены как надгробные камни ( на самом деле не удалено). Т.е. будут ли они засчитываться, когда я бегу select count(*) from realtime_table?

1 Ответ

0 голосов
/ 28 июня 2018

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

Но если у вас активно истекает срок действия данных, вам может понадобиться настроить gc_grace_period, в противном случае вы можете получить слишком много неснятых надгробий, и в некоторых случаях вы получите предупреждение или ошибку во время чтения, если операцию чтения нужно будет пропустить надгробия (контролируются tombstone_warn_threshold & tombstone_failure_threshold варианты cassandra.yaml.

Вот очень хороший пост в блоге , который описывает, как данные удаляются и очищаются.

Но select count(*) from table - настоящий антипаттерн в Кассандре - вам нужно подумать о правильном моделировании ваших данных с разделами и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...