Вот пример прецедента:Как реализовать фиксированное число столбцов (timeuuid) в cassandra (с CQL)?
Вам необходимо сохранить последние пользовательские действия N (допустим, 1000 в виде фиксированного размера) со всеми деталями в столбцах, основанных на timeuuid.
Обычно действия каждого пользователя уже находятся в семействе столбцов «UserAction», где идентификатор пользователя в виде строки строки и действия в столбцах timeuuid. У вас также может быть семейство столбцов AllActions, которое хранит все действия с одинаковым временем, как имя столбца и идентификатор пользователя, как значение столбца. Это в основном семейство столбцов отношений, но, к сожалению, без каких-либо подробностей действий пользователя. Полагаю, что запрос с этим семейством столбцов дорог, из-за случайного partioner. С другой стороны, если вы храните все детали в «AllActions» CF, то cassandra не может правильно обрабатывать эту большую строку в одной точке. Вот почему я хочу хранить последние N пользовательских действий со всеми подробностями в фиксированном количестве столбцов, основанных на timeuuid.
Может быть, вы можете иметь лучшее дизайнерское решение для этого случая использования ... Я хотел бы услышать, что ...
Если нет, вопрос в том, как реализовать фиксированное количество (timeuuid) столбцов в Кассандре (с CQL)?
После вставки мы могли удалять старые (переполненные) столбцы, если бы у нас была некоторая поддержка диапазона в DELETE cql. AFAIK нет никакой поддержки для этого.
Итак, любая идея? Спасибо заранее ...
Это своего рода [КАССАНДРА-3929] (https://issues.apache.org/jira/browse/CASSANDRA-3929). –