← К списку задач
·Средний·~15 мин

Звёздная схема: опиши связи между таблицами

Сценарий

Ты строишь модель данных в Power BI для анализа продаж казахстанского маркетплейса. У тебя есть четыре таблицы:

Таблица orders (факты):

  • order_id — ID заказа
  • customer_id — ID покупателя
  • product_id — ID товара
  • date_id — дата заказа (ключ)
  • amount — сумма заказа (₸)
  • quantity — количество единиц

Таблица customers (измерение):

  • customer_id — уникальный ключ
  • name — имя покупателя
  • city — город (Алматы, Астана, Шымкент…)
  • segment — сегмент (розница, опт)

Таблица products (измерение):

  • product_id — уникальный ключ
  • product_name — название товара
  • category — категория (Электроника, Одежда…)
  • brand — бренд

Таблица dates (измерение дат):

  • date_id — уникальный ключ (полная дата)
  • year — год
  • month — месяц (1–12)
  • month_name — название месяца
  • quarter — квартал

Задача

Опиши текстом схему связей между этими таблицами для Power BI:

  • Какая таблица является центральной (фактовой)?
  • Как и по каким ключам соединяются таблицы-измерения с ней?
  • Какой тип кардинальности у каждой связи?

Ожидаемый ответ

Центральная таблица (факты): orders — содержит числовые метрики (amount, quantity) и ключи для связи.

Связи (все — «один ко многим», direction: одна сторона → orders):

customers (1) ──────── (many) orders
  по ключу: customers[customer_id] → orders[customer_id]

products (1) ─────────(many) orders
  по ключу: products[product_id] → orders[product_id]

dates (1) ────────────(many) orders
  по ключу: dates[date_id] → orders[date_id]

Правила звёздной схемы в Power BI:

  1. Таблица фактов находится в центре — к ней тянутся все измерения.
  2. Связи один-ко-многим: одна строка в измерении → много строк в фактах.
  3. Направление фильтра — от измерения к фактам (одиночное, не двустороннее).
  4. Таблицы-измерения не связаны друг с другом напрямую.

Такая структура называется «звёздная схема» (Star Schema) и обеспечивает максимальную производительность DAX.

Эта задача — на изучение. Sandbox для появится в следующей фазе.