Проектирование хранилищ данных для приложений систем деловой осведомленности (Business Intelligence Systems)

Проектирования модели ХД по логической модели

Показывать лекцию целиком
  • Создание схемы "Звезда" на основе логической модели ХД;
  • Анализ логической модели;
  • Определение колонок таблицы фактов;
  • Определение колонок таблиц измерений.
  • Алгоритм создания физической модели ХД

  • Определение базовых таблиц БД;
  • Определение колонок в таблицах;
  • Определение типов данных для колонок;
  • Назначение первичных ключей таблицам;
  • Задание ограничений NOT NULL на значения колонок;
  • Создание связей между таблицами.
  • Логическая модель ХД

    Что мы имеем

    Логическая модель ХД: Таблица фактов "Продажи" (Sales)

    Атрибут Значение Тип
    Sale_ID Идентификатор продаж, ключ сущности Целое
    Amount Сумма платежа Десятичное
    Quantity Количество Целое

    Логическая модель ХД, приведенная на рисунке выше, была разработана для анализа продаж компании в разрезах товары, продавцы, покупатели, время продажи. Она включает в себя четыре сущности для измерений "Время" (Time), "Покупатель" (Customer), "Товар" (Product), "Продавец" (Employee) и одну сущность для фактов "Продажи" (Sale).

    Добавление колонок в таблицу фактов

  • Дважды щелкнув мышью на таблице фактов, открыть диалоговое окно Table Properties;
  • На диалоговом окне выбрать вкладку Columns;
  • Определить для каждой колонки имя, тип данных и. т.д.
  • OK
  • Определение колонок таблицы фактов

    Определение колонок таблицы фактов

    Таблица фактов SALES

    Логическая модель ХД: Таблица измерений "Время" (Time)

    Атрибут Значение Тип
    Time_ID Идентификатор времени, ключ сущности Целое
    Year Год Целое
    Quartet Квартал Целое

    Добавление колонок в таблицу измерений

  • Дважды щелкнув мышью на таблице измерений, открыть диалоговое окно Table Properties;
  • На диалоговом окне выбрать вкладку Columns;
  • Определить для каждой колонки имя, тип данных и. т.д.
  • OK
  • Создание таблицы измерений Time

    Таблица измерений Time

    Задание

  • Самостоятельно определить колонки таблиц измерений "Продавец", "Товар" и "Покупатель", исходя из схемы логической модели ХД.
  • Логическая модель ХД: Таблица измерений "Покупатель" (Customer)

    Атрибут Описание Тип
    Cust_ID Идентификатор покупателя, ключ сущности Целое
    FName Имя покупателя Символьное
    LName Фамилия покупателя Символьное
    Address Адрес покупателя Символьное
    Company Место работы Символьное

    Таблица измерений Time (ответ)

    Логическая модель ХД: Таблица измерений "Товар" (Product)

    Атрибут Описание Тип данных
    Prod_ID Идентификатор товара, ключ сущности Целое
    Name Наименование товара Символьное
    Size Габариты товара Символьное
    Unit_Price Цена товара Десятичное

    Таблица измерений Product (ответ)

    Логическая модель ХД: Таблица измерений "Продавец" (Employee)

    Атрибут Описание Тип данных
    Empl_ID Идентификатор продавца, ключ сущности Целое
    Empl_FName Имя продавца Символьное
    Empl_LName Фамилия продавца Символьное
    Address Адрес продавца Символьное

    Таблица измерений Employee (ответ)

    Установление связей между таблицами модели

  • На палитре инструментов выбрать элемент модели Reference;
  • Щелкнуть левой кнопкой мыши на таблице фактов и перетащить стрелку на таблицу измерений.
  • Обратите внимание на то, что первичный ключ измерения мигрирует в таблицу фактов.
  • Установление связи между таблицей измерений Time и таблицей фактов Sales

    Задание

  • Самостоятельно установите связи между таблицей фактов и измерениями "Продукт", "Покупатель" и "Продавец".
  • Таким образом, Вы спроектировали схему "звезда" для анализа продаж компании.
  • Схема "звезда" для анализа продаж компании

    Иерархии

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

  • Для этого создадим таблицу измерений "Регион" (Region) с колонками RegionID (PK), Region и Manager.
  • Установим связь между измерением "Регион" и измерением "Продавец".
  • В диалоговом окне Table Proreties на вкладке Column для внешнего ключа RegionID установим признак первичного ключа.
  • OK
  • При введении иерархии в схему "звезда" мы получаем схему "снежинка".

    Добавление иерархии в измерение

    Добавление иерархии в измерение

    Выводы

  • На этом практикуме Вы:
  • Научились определять колонки для таблиц фактов и измерений;
  • Устанавливать связи между таблицей фактов и измерениями;
  • Научились строить схемы ХД типа "звезда".
  • Научились добавлять иерархии в измерение.
  • Вернуться к учебному плану