Кассандра - объединение нескольких таблиц в виде представления - PullRequest
1 голос
/ 06 августа 2020

У меня в Кассандре 20 столов. Для одного конкретного запроса мне нужны данные из всех 20 таблиц. Как я могу это сделать? Могу ли я использовать материализованное представление в Cassandra?

Или мне следует использовать триггер Cassandra и делать запись в другой таблице всякий раз, когда что-то изменяется в любой из 20 таблиц?

Или есть лучший способ ?

1 Ответ

2 голосов
/ 06 августа 2020

Материализованное представление в Cassandra просто поддерживает новую таблицу на основе данных одной таблицы, поэтому вы не можете использовать эту функциональность для своих целей. Триггеры также не предназначены для такой работы.

Итак, для вас единственный выбор - выполнить несколько запросов ко многим таблицам (медленно) или сохранить отдельную таблицу со всеми данными, которые необходимы для ответ на этот запрос - это рекомендуемый способ в Cassandra, так как все структуры таблиц основаны на запросах.

Я рекомендую пройти курс DS220 по моделированию данных на DataStax Academy

...