Многомерная и реляционная модели хранилищ данных имеют свои преимущества и недостатки. Например, многомерная модель позволяет быстрее получить ответ на запрос, но не дает возможности эффективно управлять такими же большими объемами данных, как реляционная модель.
Логично было бы использовать такую модель ХД, которая представляла бы собой комбинацию реляционной и многомерной моделей и позволяла бы сочетать высокую производительность, характерную для многомерной модели, и возможность хранить сколь угодно большие массивы данных, присущую реляционной модели. Такая модель, сочетающая в себе принципы реляционной и многомерной моделей, получила название гибридной, или HOLAP (Hybrid OLAP).
Хранилища данных, построенные на основе HOLAP, называются гибридными хранилищами данных (ГХД) (рис. 10).
Главным принципом построения ГХД является то, что детализированные данные хранятся в реляционной структуре (ROLAP), которая позволяет хранить большие объемы данных, а агрегированные — в многомерной (MOLAP), которая позволяет увеличить скорость выполнения запросов (поскольку при выполнении аналитических запросов уже не требуется вычислять агрегаты).
Рис. 10. Гибридное ХД
Пример
В супермаркете, ежедневно обслуживающем десятки тысяч покупателей, установлена регистрирующая OLTP-система. При этом максимальному уровню детализации регистрируемых данных соответствует покупка по одному чеку, в котором указываются общая сумма покупки, наименования или коды приобретенных товаров и стоимость каждого товара. Оперативная информация, состоящая из детализированных данных, консолидируется в реляционной структуре ХД. С точки зрения анализа представляют интерес обобщенные данные, например, по группам товаров, отделам или некоторым интервалам дат. Поэтому исходные детализированные данные агрегируются, и вычисленные агрегаты сохраняются в многомерной структуре гибридного ХД.
Если данные, поступающие из OLTP-системы, имеют большой объем (несколько десятков тысяч записей в день и более) и высокую степень детализации, а для анализа используются в основном обобщенные данные, гибридная архитектура хранилища оказывается наиболее подходящей.
Недостатком гибридной модели является усложнение администрирования ХД из-за более сложного регламента его пополнения, поскольку при этом необходимо согласовывать изменения в реляционной и многомерной структурах. Однако существует и ряд преимуществ, делающих гибридную модель ХД привлекательной.
С гибридной архитектурой ХД обычно связывают еще одно важное понятие — витрины данных (data marts). Ситуация, когда для анализа необходима вся информация, содержащаяся в ХД, возникает крайне редко. В большинстве случаев подразделения предприятия или организации используют профильную информацию, касающуюся только того направления деятельности, которое они обслуживают. Как правило, объем такой тематической информации невелик по сравнению с общим объемом хранилища и вполне эффективно может обслуживаться MOLAP-системой. Концепция витрины данных заключается в выделении профильных данных, чаще всего используемых по определенному направлению деятельности, в отдельный набор и в организации его хранения в отдельной многомерной БД, подключенной к централизованному РХД.
Чаще всего для построения витрин данных используется многомерная модель, поскольку при небольших объемах данных она обеспечивает более быстрый отклик на запросы, чем реляционная, хотя в некоторых случаях используется и реляционная модель.
Определение
Витрина данных — специализированное локальное тематическое хранилище, подключенное к централизованному ХД и обслуживающее отдельное подразделение организации или определенное направление ее деятельности.
На рис. 11 изображена система консолидации с использованием витрин данных.
Рис. 11. Консолидация с использованием витрин данных
Использование витрин данных имеет следующие преимущества, делающие их ближе и доступнее конечному пользователю:
Использование витрин данных наиболее эффективно в крупных организациях с большим количеством независимых подразделений, каждое из которых решает собственные аналитические задачи. В этом случае витрины данных могут применяться как самостоятельно, так и вместе с централизованным ХД. Однако использование самостоятельных витрин данных сопряжено с такой проблемой, как многократное дублирование данных в различных витринах, что в конечном итоге может привести к противоречивости данных.
Использование витрин данных вместе с централизованными ХД позволяет повысить достоверность данных, получаемых пользователями витрин, поскольку витрины «питаются» данными из хранилищ, где автоматически поддерживается целостность и непротиворечивость данных и производится их очистка. Кроме того, корпоративная информационная система может эффективно наращиваться за счет добавления новых витрин данных. И наконец, использование витрин данных позволяет снизить нагрузку на централизованное ХД.
Примером организации централизованного ХД с витринами данных для предприятия с большим количеством подразделений может служить схема, представленная на рис. 12.
Рис. 12. Централизованное ХД с витринами данных
В настоящее время концепция витрин данных находит очень широкое применение при построении систем бизнес-аналитики, особенно для многопрофильных предприятий со сложной организационной структурой.