Как вы проектируете базу данных OLAP? - PullRequest
6 голосов
/ 24 августа 2010

Мне нужен умственный процесс для разработки базы данных OLAP ...

По существу, для стандартного реляционного интерфейса это будет (свободно):

Identify Entities
Identify Relationships
Identify Properties of Entities

Для каждого свойства:

Ensure property can be related to only one entity
Ensure property is directly related to entity

Для баз данных OLAP я понимаю терминологию, мотивацию и структуру; однако я понятия не имею, как разложить мою реляционную модель в модель OLAP.

Ответы [ 2 ]

8 голосов
/ 16 сентября 2010

Определить размеры (или по) Это все, что вы можете проанализировать / сгруппировать ваш отчет. Каждая таблица в исходной базе данных является потенциальным измерением. Размеры должны быть иерархическими, если это возможно, например, у вашего измерения Date должна быть иерархия года, месяца, дня. Аналогично, местоположение должно иметь, например, иерархию страны, региона и города. Это позволит вашему инструменту OLAP более эффективно вычислять агрегации.

Определить меры Это KPI или фактическая числовая информация, которую хочет видеть ваш клиент, обычно они могут быть агрегированы, поэтому любое числовое поле без ключа, не являющееся ключом в исходной базе данных является потенциальной мерой.

Упорядочить по схеме «звезда», с показателями в центральной таблице «Факт» и связями FK с применимыми таблицами измерений. Меры должны храниться на самом низком уровне иерархии измерений.

Определите «зерно» таблицы фактов, это, по сути, «уровень детализации». Обычно это определяется требованиями к отчетности, степенью детализации данных, доступной в источнике, и требованиями к производительности решения для отчетности. Вы можете определить зернистость по мере продвижения или подходить к ней в качестве последнего шага после определения всех важных данных. , Я, как правило, хочу сделать последний шаг, чтобы убедиться, что зерно между моими таблицами фактов соответствует.

Последний шаг - определение медленно меняющихся размеров и требований к ним. Например, если измерение клиента включает в себя элемент их адреса, и они перемещаются, как это должно быть обработано.

3 голосов
/ 06 апреля 2013

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

...