Мне нужно сохранить эту структуру данных в моей базе данных:
Activity:
user_id: UUID ( Partition Key )
created_at: timestamp ( Clustering Key )
activity_id: UUID ( Clustering Key )
activity_data: map<string, string>
Мой запрос на получение данных будет выглядеть примерно так
SELECT * FROM activities WHERE user_id=SOME-UUID LIMIT 500;
Насколько я понимаю, когда Кассандра ищетдля строки в его файлах он будет загружать в память все данные даже при использовании LIMIT.
- Это правда?
- Если это так, как мне сохранить данные в противном случае, принимаяпринимая во внимание, что я хочу сделать только один запрос (из того, что я знаю, составной ключ раздела потребует от меня сделать несколько запросов)
- Как мне хранить данные, если мне также нужно отфильтровать значения в моем "поле деятельностиДостаточно ли индекса для поля карты?
Спасибо.