Урок 05 · 7 мин чтения

Связи таблиц и направление фильтра

Как Power BI понимает, что продажи относятся к нужному товару и региону, и почему у связи есть направление.

В прошлом уроке мы разложили данные на факты и измерения. Чтобы Power BI понял, что они связаны, между таблицами нужно провести связи. Это та самая ниточка, по которой фильтр из справочника добирается до фактов.

Связь «один ко многим»

Базовый и почти единственный нужный вам тип связи — «один ко многим».

В справочнике товаров каждый товар встречается один раз. В таблице продаж этот товар встречается много раз — он продавался сотни раз. Значит, связь от товара к продажам — «один ко многим». То же с датой, регионом, клиентом.

Связь проводится по ключу: код товара есть и в справочнике, и в продажах. Power BI сопоставляет их и понимает, какая продажа к какому товару относится.

Ключи лучше числовые

Связывать таблицы надёжнее по короткому числовому коду (ID товара), чем по длинному тексту (полное название). Числовые ключи компактнее, модель по ним работает быстрее и не спотыкается на лишнем пробеле в названии.

У фильтра есть направление

Вот ключевая идея урока. Когда вы кликаете в срезе «молочка», фильтр течёт от измерения к фактам: из справочника товаров → в продажи. Продажи фильтруются, мера пересчитывается, вы видите выручку по молочке.

В обратную сторону по умолчанию фильтр не идёт: выбор продажи не фильтрует справочник. И это правильно — так и задумано в схеме «звезда».

   Товар (1)  ──фильтр──►  Продажи (∞)
   срез по категории       пересчёт меры

Запомните направление стрелки: измерение фильтрует факты, не наоборот.

Двунаправленные связи — осторожно

Power BI умеет делать связь двунаправленной — фильтр пойдёт в обе стороны. Звучит удобно, но это частый источник боли:

  • появляются неоднозначные пути фильтрации (Power BI не знает, каким путём считать);
  • модель замедляется;
  • цифры начинают вести себя непредсказуемо, и отладка превращается в детектив.
Правило по умолчанию

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

Как это выглядит на практике

В Power BI связи живут в представлении модели (Model view): таблицы — это карточки, связи — линии между ними. Стрелка на линии показывает направление фильтра. Хорошая модель выглядит именно «звездой»: справочники по кругу, факты в центре, стрелки сходятся к центру.

Если в модели паутина из связей во все стороны и двунаправленные стрелки повсюду — это первый признак, что считать по ней будет тяжело и ненадёжно.

Что дальше

Данные разложены и связаны. Но то, что мы строим, — не просто база со справочниками: это семантическая модель. Следующий урок — чем она отличается от обычной базы данных и зачем нужна.

В какую сторону по умолчанию течёт фильтр в связи «один ко многим»?
По умолчанию измерение фильтрует факты: выбрали категорию в справочнике — отфильтровались продажи. Обратное направление и двунаправленные связи включают точечно и осознанно.
Прогресс сохраняется в вашем браузере.
§ Power BI под ключ

Нужно внедрить
это в компании?

Соберём DWH, модель и дашборды под ваши данные. Бесплатная консультация — 30 минут.

Телефон+7 918 042 34 43