Формирование модели данных для визуализации
Общие сведения
После загрузки данных вы можете объединить таблицы, построив логическую модель данных для получения наиболее полных сведений и последующем отображении их в интерактивном дашборде. В данной версии платформы для многомерного моделирования данных используются три схемы:
"Звезда" – при такой схеме используется одна таблица фактов, содержащая числовые параметры (например, количество проданного товара, номер магазина, время операции, и т.д.) и одна или несколько таблиц измерений, содержащих описательную информацию о числовых значениях таблицы фактов (например, информацию о покупателях, магазинах, описание товаров и т.д.).
“Созвездие“ – при такой схеме используются две или более таблицы фактов, у которых могут быть общие таблицы измерений. Напрямую таблицы фактов между собой не связаны. Схема рассматривается как набор “звезд”, отсюда и происходит ее название. Она удобна, если, например, необходимо сравнить план продаж с фактическими продажами.
“Снежинка“ – при такой схеме таблицы измерений связаны не только с таблицей фактов, но и друг с другом, формируя иерархические цепочки. Визуально такая структура напоминает снежинку, отсюда и происходит её название. Она удобна, если требуется глубоко нормализовать данные для повышения их целостности и эффективности хранения. Например, измерение Товар может быть связано с измерением Категория, которое, в свою очередь, связано с измерением Подразделение, предоставляя дополнительные уровни детализации для анализа.
Во всех случаях связи между таблицами строятся на основе отношений «один ко многим» (1:*). При использовании модели “звезда“ или “созвездие“ таблицы измерений являются родительскими по отношению к таблице фактов, в то время как при использовании схемы “снежинка”, таблицы измерений могут быть родительскими не только по отношению к таблице фактов, но и по отношению к другим таблицам измерений, формируя иерархические цепочки. При использовании схемы “звездочка“ или “созвездие“ количество связываемых таблиц ограничивается вашими бизнес-задачами. Для схемы “снежинка“ есть ограничения (см. раздел “Особенности работы со схемой “снежинка”” ниже).
Пример связи “один ко многим”
Есть две таблицы: "Заводы" и "Автомобили". Они имеют связь "один ко многим", то есть, каждый завод выпускает несколько моделей автомобилей, но каждый автомобиль имеет отношение только к одному заводу.
При создании модели данных вы также можете установить две и более связей между таблицей фактов и таблицей измерений (см. ниже).
На рисунках ниже приведены примеры схем "звезда", “созвездие“ и “снежинка“, созданные для учета продажи электроники.
Пример 1
В данном примере показаны две модели, построенные по схеме “звезда”:
несколько таблиц, связанных с таблицей фактов (Модель 1)
одна таблица, связанная с таблицей фактов (Модель 2).
Таблицей фактов является "Продажи электроники":
Пример 2
В данном примере показаны две таблицы фактов с общей таблицей измерений (схема “созвездие”).
Две таблицы фактов могут быть связаны с таблицей измерений по разным атрибутами этой таблицы. Например, таблица “Продажи электроники” может быть связана с таблицей “Магазины” по полю "Номер магазина", а таблица “План продаж” может быть связана по полю "Название магазина".
Таблица измерений должна содержать уникальные значения атрибута (например, идентификаторы товара), по которому создается связь с таблицей фактов. В противном случае, получается связь “многие ко многим”, которая в данный момент не поддерживается.
Пример 3
В данном примере схема имеет иерархическую структуру, где от центральной таблицы фактов (Продажи электроники) расходятся "лучи" измерений, а некоторые измерения сами ветвятся на дополнительные под-измерения, образуя форму снежинки. Это демонстрирует нормализованную структуру данных, где каждая сущность хранится без избыточности.
Особенности работы со схемой “снежинка”
Построение связи
На платформе Visiology связь между загруженными таблицами устанавливается путем перетаскивания столбца таблицы измерений в столбец таблицы фактов, при этом тип данных двух столбцов должен быть одинаковым.
Для создания связи выполните следующие шаги:
Перейдите на вкладку Наборы данных в окне рабочей области и откройте требуемый набор данных. Например:
В открывшемся окне установите связь между таблицами путем перетаскивания соответствующих столбцов. В примере ниже мы связываем таблицы с помощью поля datekey:
Нельзя связать столбцы с разным типом данных. Если вы попытаетесь сделать это, приложение выведет на экран предупреждение.
При попытке установления связи, которая не укладывается в рамки модели “звезда” или “созвездие”, система сообщит о том, что модель “снежинка“ не поддерживается.
При построении модели убедитесь, что вы не создаете циклическую связь между несколькими таблицами, когда, например, таблица «А» связана с таблицей «B», таблица «В» связана с «С», а «С связана с «А». Циклические связи могут вызывать проблемы при обработке данных и построении отчетов.
После связывания таблиц вы можете строить графики и диаграммы, используя данные обеих таблиц.
Данные таблиц измерений никак не связаны между собой.
Помимо создания связи перетаскиванием столбцов, вы также можете воспользоваться кнопкой Новая связь в окне просмотра связей. Для этого выполните следующие действия:
Откройте требуемый набор данных, как описано выше.
В открывшемся окне нажмите кнопку Связи в верхней панели:
В открывшемся диалоге нажмите кнопку + Новая связь:
В окне Создание связи необходимо:
В выпадающих списках Из таблицы и В таблицу выбрать связываемые таблицы.
В каждой из таблиц указать столбцы, по которым будет установлена связь (выделить их щелчком мыши).
Настроить параметры Ссылочная целостность (из) и Ссылочная целостность (в):
Полное соответствие – в визуализациях будут отображаться только те строки, для которых существуют значения в обеих связанных таблицах. Строки с отсутствующими значениями не выводятся.
Частичное соответствие – в визуализациях будут отображаться все строки, включая те, в которых отсутствуют значения в одной из связанных таблиц (см. Примеры настроек ссылочной целостности).
Выбрать Количество элементов:
Один ко многим (1:*) — направление связи от таблицы с уникальными значениями к таблице с повторяющимися значениями.
Многие к одному (*:1) — обратное направление связи.
При необходимости установить флаг Активировать связь. Активная связь будет использоваться в вычислениях по умолчанию.
Нажать Сохранить.
После создания связей вы можете просмотреть их. Для просмотра существующей связи наведите курсор мыши на ее графическое изображение – приложение подсветит поля, по которым вы связали таблицы:
Ниже пример модели данных с таблицами измерений, привязанными к таблице фактов factonlinesales:
ВАЖНО!
В текущей версии платформы корректно работают только консистентные связи между таблицами фактов и измерений. Это означает, что при агрегации данных (например, при расчете сумм, средних значений или количеств) учитываются только те записи из таблицы фактов, для которых есть соответствующие записи в таблицах измерений. Например, если в таблице фактов есть ID товара, которого нет в справочнике товаров, то при подсчете суммы продаж по товарам продажи этого "безымянного" товара не будут учтены в агрегации.
При выборе элементов таблицы система подсвечивает их в панели Поля справа, что позволяет быстро найти используемые столбцы в таблице. Чтобы выбрать несколько элементов, удерживайте клавишу Ctrl, при этом вы можете одновременно выбирать элементы как одной, так и нескольких таблиц:
Построение нескольких связей между таблицами
При создании модели данных вы также можете установить две и более связей между таблицей фактов и таблицей измерений. Это поможет вам анализировать данные в разных контекстах без необходимости создавать дополнительные таблицы. Например, если у вас есть таблица Продажи и таблица Календарь, вы можете связать их по дате заказа и по дате доставки, чтобы анализировать как сроки выполнения заказов, так и динамику продаж. При этом активной может быть только одна связь, которая будет использоваться для вычислений по умолчанию. Чтобы сделать активной другую связь, необходимо деактивировать активную связь и активировать нужную (см. ниже). Две активные связи между таблицами быть не может. Временно активировать одну из связей также можно с помощью мер с использованием функции USERELATIONSHIP.
Пример модели данных с несколькими связями: одна активная связь (сплошная линия) и три неактивные (пунктирные линии):
Активация и деактивация связей
Для деактивации связи щелкните по активной связи и выберите Деактивировать в контекстном меню.
Для активации связи необходимо щелкнуть по неактивной связи и выбрать в меню Активировать:
Просмотр списка связей
При наличии большого количества таблиц в модели бывает сложно отследить некоторые связи:
Для облегчения этой задачи вы можете воспользоваться списком связей. Для этого необходимо сделать следующее:
Нажмите кнопку Связи в верхней части окна построения модели:
В открывшемся диалоге вы увидите какие таблицы связаны между собой. Направление связи указывается в колонках Откуда (исходная таблица и колонка) и Куда (целевая таблица и колонка). Статус Активная означает, что связь используется в данный момент, Неактивная – временно отключена. Для быстрого поиска нужной таблицы воспользуйтесь строкой поиска:
Обратите внимание, что в визуальном представлении стрелки показывают направление связи от таблицы измерения к таблице фактов, в то время как в окне просмотра связей таблица фактов находится в колонке Откуда, а таблицы измерений в колонке Куда. Это происходит по следующим причинам:
В визуальном представлении стрелка указывает направление фильтрации – от одного к многим, то есть от справочника к таблице фактов.
В окне просмотра связей в столбце Откуда указывается та таблица, где находится внешний ключ – то есть та, где много, а в столбце Куда таблица, где находится первичный ключ – то есть та, где один.
Другими словами в визуальном представлении учитывается фильтрация (один → много), а в окне просмотра связей структура данных (внешний ключ → первичный ключ).
Редактирование связи
Если необходимо изменить параметры существующей связи, например, настроить ссылочную целостность или количество элементов, вы можете отредактировать её.
Для этого выполните следующие шаги:
Откройте требуемый набор данных и нажмите кнопку Связи в верхней части окна построения модели данных:
В открывшемся окне Просмотр связей найдите нужную связь.
Нажмите кнопку с изображением карандаша в строке этой связи:
Откроется окно Изменение связи, в котором доступны те же настройки, что и при создании новой связи (см. выше):
Выбор таблиц и столбцов для связи.
Настройка Ссылочной целостности для исходной и целевой таблицы.
Выбор Количества элементов.
Флаг Активировать связь.
После внесения изменений нажмите кнопку Сохранить.
Удаление связи
Если вы ошибочно привязали таблицу и хотите удалить созданную связь, кликните на ее графическое изображение и нажмите Удалить связь:
Также вы можете удалить связь, находясь в режиме просмотра связей. Для этого сделайте следующее:
Наведите курсор мыши на связь, которую хотите удалить.
Нажмите кнопку с изображением корзины.
Подтвердите удаление, нажав Удалить в диалоге подтверждения:
Смотрите также
На этой странице
Видео
Время чтения: 2 мин.
Нужна дополнительная помощь?