Мой вопрос: при использовании TWCS использует ли Cassandra собственную метку времени (например, метку времени, когда была введена строка), или она может использовать метку времени в данных (например, timeuuid или поле метки времени в строка) при использовании временных окон?
Например, если у меня есть база данных Cassandra такая, что:
- У меня есть данные с TTL 30 секунд
- У меня есть временные окна длиной 1 секунда
- Я пишу около 100 строк по 1 МБ в секунду
- В моем кластере 3 узла
- У меня есть ключ раздела, состоящий из (id, second_of_a_minute)
Насколько я понимаю, у меня должно быть около 29 SSTable, плюс SSTable в последнем временном окне, плюс любые SSTable, которые еще не были собраны сборщиком мусора, а также любые данные, которые есть в memtable в любое время через 30 секунд.
Теперь, если я запрашиваю данные, которые были сохранены между (сейчас - 20 секунд) и (сейчас - 10 секундами), мои данные будут храниться примерно в 10 SSTables. Проверяет ли Cassandra SSTable из каждого временного окна, чтобы проверить, хранятся ли данные в моем временном интервале, или он запрашивает только SSTable в тех временных окнах, которые соответствуют моему временному запросу?