Модель данных микростратегии
Я новичок в 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 предлагает также динамический способ сопоставления отчетов с кубами (при соблюдении условий), но пользователи могут удивить даже самого тщательного дизайнера.