Основа основ проекта QlikView – это модель данных. Пусть эта часть работы и не видна для конечного пользователя, но чтобы потом избежать лишних сложностей, важно выделить время для скрупулёзной предварительной работы над моделью данных. Сегодня хочу поделиться подходом по разработке модели данных – матрицей отношений.

Сначала важно определить состав необходимых строк и столбцов, с учетом анализа бизнес-процессов компании, а только затем стоит приступать к дизайну схемы. Требования бизнес-пользователей всегда определяют модель данных, поэтому без детального понимания всех требований (документированных?!), не начинайте писать скрипт QlikView (это без исключений).

Важно учитывать, что ассоциативная модель данных QlikView отличается от OLAP – модель данных создать гораздо проще и быстрее, но и тут есть свои тонкости. В модели Qlik одинаковые имена в разных таблицах будут ассоциированы, т.е. если есть поля с одинаковыми именами, создается синтетический ключ. Итак, если вы видите дополнительные таблицы в своей модели данных со знаком доллара, делайте проверку модели и избавляйтесь от ключей.

Модель данных

Матрица отношений: зачем она нужна и, как ее составить

Матрица отношений помогает понять, какой будет модель данных. Традиционно матрица отношений создается на основе списка атрибутов и краткой расшифровки каждого атрибута.

Итак, по шагам о разработке модели данных:

  1. Выберите бизнес-процесс и владельца процесса (с которым будете обсуждать детали существующих правил работы, показателей и расчяетов в компании);
  2. Определите элементы бизнес-процесса и установите гранулированность таблиц (например, 1 строка заказа, 1 месяц продаж, 1 транзакция);
  3. Выберите измерения для каждого факта и определите меры для каждой строки факта;
  4. Идентифицируйте числовые факты, которые будут содержаться в каждой строке таблицы фактов.

Указываю здесь список, который поможет понять, все ли нам известно о требованиях:

Список показателей/ключевых показателей эффективности (KPI), включая:

  • Подробности расчетов (поля, расположение таблицы, правила);
  • Иерархия/Приоритет;
  • Какой тренд применим к тем или иным измерениям (по времени, по магазинам, по продуктам).

Фильтры:

  • Фильтры, необходимые для фильтрации информации;
  • Группировка информации (например, по продуктам, по департаментам и т.д.);
  • Поле приоритетности фильтров (восемь приоритетных фильтров, которые необходимо использовать на листах документа QlikView).

Требуемые таблицы (это итоговое резюмирование всех метрик и измерений, указанных выше):

  • Место нахождения полей;
  • Частота обновления;
  • Тип загрузки данных;
  • Любые дополнительные соображения по требованиям (например, наличие медленно изменяющихся измерений);
  • Какие поля требуются для уточнения контекста информации или детализации информации.

Список ключевых диаграмм/проекций данных (таблицы с данными):

  • Тип диаграммы (Line, Bar, Combo, Straight Table, Pivot Table и т.д.);
  • Отображение тренда по дням, неделям, месяцам в разрезе тех или иных KPI.

Требования по пользователям:

  • Кому требуется доступ и к каким данным;
  • Когда требуются данные (для предварительной загрузки дашборда);
  • Есть ли требования по безопасности данных (ограничение доступа и передачи данных);
  • Как к дашборду будет обеспечиваться доступ (AJAX, IE Plug-in, Tablet и др.);
  • Цветовая палитра для настройки дашборда и других элементов приложений;
  • Требования к языку приложения.

Итак, в результате сбора требований, мы получим исходную матрицу, в которой опишем:

  • показатели (например, количество чеков, себестоимость),
  • источник, где хранятся данные,
  • название таблицы,
  • измерения.

Опционально можем оставить поле комментариев

Далее формируем целевую матрицу:

  • Показатель (наши расчетные показатели по требованиям бизнес-пользователей),
  • Тип расчета (на период или на дату),
  • Варианты расчета,
  • Измерения (по времени, по точке продаж, по продукту, прочие измерения)

Матрица отношений модели данных

Число строк и столбцов в матрице варьируется от организации к организации. Для большинства компаний – это таблица из 25-40 строк и примерно стольких же столбцов. Хотя есть и большие таблицы, которые связаны с отраслевой спецификой компании (это, в первую очередь, касается страхования, где число столбцов и строк в разы больше).

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

Комментируйте, делитесь своим опытом!