Оптимальная структура базы данных для MicroStrategy
Большую часть своей карьеры я потратил на разработку хранилищ данных / витрин в виде схем Star, поскольку они обычно использовались совместно с аналитическими службами Microsoft. Тем не менее, мы начинаем использовать MicroStrategy 9.0.1, и мне сказали, что схемы Star менее оптимальны для этой платформы. У MicroStrategy нет официальной позиции по этой теме, поэтому я решил спросить это сообщество. Должен ли я продолжать использовать денормализованные структуры или мне следует рассмотреть более нормализованный подход в отношении этой платформы?
Мое намерение не состоит в том, чтобы начать войну против Кимбалла против Инмона и т.д., любой опыт реального мира был бы оценен
4 ответа
На самом деле это не имеет большого значения, используя звездные схемы с MicroStrategy. Просто нужно немного привыкнуть и генерировать прекрасные запросы в этом формате.
От очень опытного консультанта MSTR я слышал, что форма данных, которую MSTR действительно любит - это своего рода модифицированная снежинка. Где измерения данных смоделированы как снежинка, но каждый уровень содержит данные таблиц в иерархии над ним.
Я думаю, что вы можете увидеть шаблон в проекте Jumpstart. Расположенный здесь: http://www.microstrategy.com/BI-application-jumpstart/
В конечном счете, я думаю, что вы должны продолжать использовать методы, которые работают лучше всего для вас. С настройкой логической модели данных не должно быть особых проблем, и в MSTR есть масса методов оптимизации производительности (кеширование, кубы в памяти и т. Д.), Которые вы можете применять после слов для ускорения процесса.
Я работаю в банке в Турции, и мы работаем с MicroStrategy уже более 3 лет. У нас есть более 20 разных проектов, работающих на разных базах данных и разных типах схем. При правильном проектировании (и реализации) MSTR вполне способен обрабатывать схемы типа "звезда" и генерирует умеренно красивые SQL-операторы. Я должен сказать, что привыкнуть к обработке родительского-дочернего элемента и таблицы поиска / факта в MSTR при проектировании архитектуры может быть непросто. Но как только вы преодолеете это, это будет довольно удобно.
Я имел удовольствие (или иным образом) работать с MicroStrategy в течение последних восьми лет. Я думаю, было бы справедливо сказать, что продукт был разработан для использования со схемой в третьей нормальной форме. То есть проще всего смоделировать ваши объекты в инструменте с помощью схемы, разработанной таким образом.
Как говорит Угур, MSTR вполне способен работать со звездообразной схемой, и, в зависимости от ваших данных, может быть лучше использовать звездообразную схему (в целях повышения производительности), даже если моделирование немного (или много) сложнее в Микростратегия.
Когда в 2007 году мы пошли по пути MicroStrategy, консультанты MicroStrategy, с которыми мы работали, сказали нам, что схема "звезда" в порядке, но их технология лучше всего работает со схемой "снежинка". Разница в том, что измерения нормализованы, т. Е. Вместо таблицы измерений "Время" у вас есть таблицы измерений "День", "Неделя", "Месяц", "Квартал" и "Год". Поскольку мы работали в сфере транспорта и логистики, наше хранилище данных имело много сложных связей, но не огромное количество данных; высокое "отношение таблицы к терабайту". В ортодоксальной форме паттерны звезд и снежинок объединяются в таблицы фактов только через согласованные измерения, и какое-то время мы рассматривали "гибридную" схему с объединениями между таблицами фактов. В итоге мы выбрали нормализованную структуру хранилища данных, как наиболее подходящую для компании.
Мы потратили много месяцев на разработку и уточнение наших стандартов для объектов схемы MicroStrategy поверх наших складских таблиц и в итоге разработали очень надежные шаблоны. Эти шаблоны не были широко признаны и, насколько мне известно, не получили широкого распространения у других клиентов MicroStrategy. Они генерировали очень сложные sql, и мы получили отличное время отклика, даже для специальных отчетов, так как мы использовали Netezza в качестве хранилища данных. Недостатком было то, что число объектов приложения, необходимых для следования шаблону, было намного выше, чем для других шаблонов, а уровень знаний для разработки новых метрик был высоким. Мы успешно обучили всех наших пользователей BI использовать существующие метрики (разработанные специалистами BI). Это решение BI/DW активно используется сегодня.
Поэтому я утверждаю, что MicroStrategy не была создана для нормализованной схемы хранилища данных, хотя их технология очень надежна и достаточно надежна для работы с такой базой данных. Их предпочтительным шаблоном является снежинка с нормализованными таблицами измерений и стандартными таблицами фактов.