Как хранить данные об активности в Кассандре - PullRequest
0 голосов
/ 02 апреля 2019

Мне нужно сохранить эту структуру данных в моей базе данных:

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.

  1. Это правда?
  2. Если это так, как мне сохранить данные в противном случае, принимаяпринимая во внимание, что я хочу сделать только один запрос (из того, что я знаю, составной ключ раздела потребует от меня сделать несколько запросов)
  3. Как мне хранить данные, если мне также нужно отфильтровать значения в моем "поле деятельностиДостаточно ли индекса для поля карты?

Спасибо.

1 Ответ

0 голосов
/ 02 апреля 2019

Да, он объединяет данные с диска и отвечает клиенту.Также обновлен кеш, если включен. Просьба уточнить два других вопроса.

...