Хранилище данных против Куба OLAP?
может ли кто-нибудь объяснить, что такое на самом деле различие между хранилищем данных и кубами OLAP?
Они разные подходы для одного и того же?
является ли один из них устаревшим по сравнению с другими?
есть ли какие-либо проблемы с производительностью в одном из них?
любое объяснение приветствуется
3 ответов:
хранилище данных-это база данных с дизайном, который упрощает анализ данных† (часто с данными из нескольких источников). Он обычно состоит из таблиц фактов и таблиц измерений, а также часто сводных таблиц.
OLAP - это набор операций Это можно сделать на наборе данных, таких как поворот, нарезка, нарезка кубиками, сверление. Например, можно выполнять операции OLAP со сводными таблицами Excel.
вы можете иметь хранилище данных и не использовать OLAP вообще (вы просто запустите отчеты).
вы также можете выполнять операции OLAP на чем-то другом, кроме хранилища данных, например на плоском файле.
сервер OLAP-это тип серверного программного обеспечения, который облегчает операции OLAP, например, с кэшированием и перезаписью запросов. Операции OLAP часто выражаются в MDX, и ваш сервер OLAP может перевести многомерные выражения в обычный SQL для вашей базы данных. Или он может работать против своего собственного двоичного формата файла.
несколько они по-разному подходят для одного и того же?
нет, хранилище данных-это место для хранения данных в легко анализируемом формате, а OLAP-это метод анализа данных.
является ли один из них устаревшим по сравнению с другими?
нет, они дополняют друг друга в том, что хранилище данных упрощает анализ данных с помощью OLAP, а OLAP может сделать анализ хранилища данных более полезным.
есть ли проблемы с производительностью в одном из них?
да. Хранилище данных предназначено для хранения большого количества данных, и поэтому для запроса потребуется время. Производительность можно повысить с помощью индексов, кэширования, разделения и предварительной агрегации некоторых данных.
Смотрите также: https://dba.stackexchange.com/questions/45655/what-are-measures-and-dimensions-in-cubes
† в отличие от того, чтобы сделать транзакции проще/более целостными
хранилище данных содержит данные, на которых вы хотите запускать отчеты, анализировать и т. д.
куб организует эти данные путем группировки данных в определенные измерения. Вы можете иметь несколько измерений (например, таблицу uber-pivot в Excel).
например, в вашем хранилище данных у вас есть все ваши продажи, но выполнение сложных SQL-запросов может занять много времени. Поэтому из вашего хранилища данных вы создаете куб, который индексирует и предварительно вычисляет данные. В вашем Кубе вы могли бы иметь все это предварительно вычисленные размеры: продажи по месяцам, по неделям, по продавцу, по клиенту, по географическому региону, по цвету продукта и т. д. Затем вы можете запустить запросы OLAP в своем Кубе, чтобы получить общий, средний и максимальный объем продаж по (месяцу, продавцу, региону), или по (цвету, региону), или по (продавцу, месяцу). Поскольку все данные предварительно вычисляются и индексируются, запросы выполняются очень быстро.
они разные подходы для одного и того же?
нет, хранилище данных-это место для хранения данных легко поддаются формат и OLAP-это метод анализа данных.
нет, они действительно делают то же самое! OLAP более предварительно вычисляется, чем DWH. OLAP - это как агрегаты в DWH
Comments