Модель данных микростратегии

Я новичок в MSTR.

Мы работаем над переходом с Essbase на Microstrategy 10.2. Мы ожидаем, что после миграции бизнес-пользователи смогут создавать отчеты поверх куба MSTR и воспроизводить данные, аналогично тому, как это делали в Essbase и Excel. Мне нужна помощь в разработке модели данных для данного сценария:

FactTb:

Subcategory Revenue

1   100

2   200

3   300


DimensionTb:

Category    Subcategory

A   1

A   2

B   1

B   2

B   3

C   2

C   3

Пользователь хочет видеть доход по категории или подкатегории.

FactTb имеет 3 строки. Предполагая размер каждой строки в 10 байтов, размер FactTb составляет 30 байтов.

Если он объединен с DimensionTb, то будет 7 строк, а размер увеличится (примерно) до 70 байт.

Есть ли способ ограничить размер куба?

Сопоставление категорий и подкатегорий является статическим, и для него нет необходимости поддерживать таблицу.

Могу ли я создать / определить DimensionTb из куба (сохранить его в отчете, создать производный элемент, используя подкатегорию)?

Мы хотим ограничить размер куба, чтобы сохранить его в памяти и обеспечить, чтобы отчет всегда попадал в куб над базой данных.

1 ответ

Решение

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

В памяти кубы сжимаются MicroStrategy с использованием нескольких алгоритмов (чтобы использовать наилучшее сжатие в зависимости от типов данных столбцов и распределений значений), но кубы также содержат внутренние индексы (для ускорения доступа к данным), созданные автоматически в зависимости от запросов, используемых для куба.

Настройка VLDB может помочь уменьшить размер куба. Если вы проверите техническую справку TN32540: Методы интеллектуального заполнения куба в MicroStrategy 9.x, вы увидите различные варианты, для моего опыта последние настройки (Direct loading of dimensional data and filtered fact data.) очень полезна для ускорения загрузки куба и уменьшения размера, но вы также можете попробовать другие (Normalize Intelligent Cube data in the Database).

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

Наконец, чтобы убедиться, что ваши пользователи всегда используют куб, разрешите / научите их создавать отчеты и информационные панели, щелкая непосредственно по кубу (или выбирая его).

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

Другие вопросы по тегам