2017-01-23 4 views
2

У меня есть около шести таблиц, каждая из которых имеет от 20 до 60 столбцов в Кассандре. Я разрабатываю схему для этой базы данных.Запрос на всех столбцах cassandra

Требование от запроса состоит в том, что все столбцы должны обрабатываться индивидуально.

  • Я знаю, что данные с высокой кардинальностью с использованием вторичных индексов не поощряются.
  • Материализованные представления решат мою цель до такой степени, когда я буду иметь возможность запрашивать и другие столбцы.

Мой вопрос:
В этом случае, если каждая таблица имеет 30 до 50+ материализованных представлений, является ли это хорошо шаблоном, чтобы следовать, или это происходит на совершенно ложном пути. Является ли это с этой функциональностью до крайности. Может быть, записи начнут становиться дорогими в системе (я знаю, что они написаны в конечном итоге, а не с немедленной записью в фактическую таблицу).

ответ

5

Вы определенно не хотите от 30 до 50 материализованных видов.

Похоже, что пример использования, который вы пытаетесь удовлетворить, - это поиск, а не конкретный запрос.

Если запросы, которые будут выполняться в каждом столбце, могут быть предварительно определены, то вы также можете пойти по пути денормализации, торговой гибкости поиска для повышения производительности и меньших эксплуатационных издержек.

Если вы заинтересованы в поиске пути, вот что я предлагаю вам взглянуть на:

Это те, кого я знаю с головы. Могут быть и другие (Извините, если я пропустил вас). Я предоставлял ссылки на каждый, чтобы вы могли принять собственное обоснованное решение, которое имеет больше смысла для вашего случая использования.

+1

Спасибо @MarcintheCloud - его отлично, когда кто-то из DataStax отвечает на ваш вопрос в первые несколько минут задавая вопрос. :) - Сделайте Stakoverflow отличным снова! ; п – DMin