Проблемные связи между данными

Приём данных и семантические модели в Microsoft Fabric

Alex Kuntz

Head of Cloud Curriculum, DataCamp

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

  • Что такое связи «многие ко многим»?
    • Несколько записей одной таблицы связаны с несколькими записями другой.

Кардинальность — многие ко многим

  • Почему это проблема?
    • Данные становятся запутанными или неточными.
    • Сложнее отслеживать конкретные связи.
Приём данных и семантические модели в Microsoft Fabric

Как устранить связи «многие ко многим»

  • Что такое таблицы-мосты?
    • Связывают таблицы через отношение «один ко многим».
    • Пример — связывает CustomerID из Customers с ProductID из Products.

Таблица-мост Таблица-мост для клиентов и продуктов

Таблица Customers:

CustomerID CustomerName City
101 John Doe New York
102 Jane Smith Los Angeles

Таблица Products:

ProductID ProductName Category
1 Laptop Electronics
2 Smartphone Electronics
Приём данных и семантические модели в Microsoft Fabric

Циклические связи

  • Что такое циклические связи?:

    • Цикл между таблицами (например, A -> B -> C -> A)
  • Почему это проблема?

    • Фильтры работают некорректно и возвращают неверные результаты
    • Модель не справляется с циклическим потоком данных и выдаёт ошибки
  • Как устранить:

    • Разорвать цикл, удалив или изменив связи
    • Использовать меры DAX или пометить связи как неактивные

Циклическая связь

Приём данных и семантические модели в Microsoft Fabric

«Звезда» или «снежинка»: в чём разница?

  • Схема «звезда»:
    • Денормализованная структура
    • Центральная таблица фактов, меньше таблиц
    • Быстрые запросы, подходит для малых и средних наборов данных

Схема «звезда»

  • Схема «снежинка»:
    • Нормализованная структура
    • Таблица фактов с подизмерениями
    • Медленнее запросы, лучше для больших и сложных наборов данных

Приём данных и семантические модели в Microsoft Fabric

Давайте потренируемся!

Приём данных и семантические модели в Microsoft Fabric

Preparing Video For Download...