Поделиться через


Руководство по быстрому старту с Graph в Microsoft Fabric

Замечание

Эта функция сейчас доступна в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения на уровне обслуживания и не рекомендуется для рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Для получения дополнительной информации см. Дополнительные условия использования для предварительных версий Microsoft Azure.

Из этого краткого руководства вы узнаете, как создать модель графа в Microsoft Fabric.

Это важно

В этой статье исключительно используется пример набора данных графа AdventureWorks.

Предпосылки

Чтобы приступить к работе с графом в Microsoft Fabric, вам потребуется следующее:

  • Graph доступен в вашем регионе.

  • Graph включен в клиенте Fabric:

    Включите граф в клиенте Fabric.

  • Lakehouse в OneLake с данными, которые необходимо проанализировать. В этом кратком руководстве в качестве примера используются данные Adventure Works. Данные и результаты могут отличаться. Если у вас нет lakehouse, создайте его, следуя этим шагам, и отключите параметр схемы lakehouse: создайте lakehouse с помощью OneLake.

    Это важно

    В настоящее время нельзя использовать lakehouse, включающую схему Lakehouse (предварительная версия).

  • Вы являетесь членом рабочей области или имеете разрешение на создание элементов в рабочей области. Дополнительные сведения см. в разделе "Рабочие области" в Microsoft Fabric.

    Это важно

    Управление доступом графа ограничено рабочей областью, в которую она размещается. Граф недоступен пользователям за пределами рабочей области. Пользователи в рабочей области, имеющие доступ к базовым данным в Lakehouse, могут моделировать и запрашивать граф.

Создание модели графа

Чтобы создать модель графа в Microsoft Fabric, выполните следующие действия.

  1. Перейдите в рабочую область Microsoft Fabric.

  2. Выберите +Создать элемент.

  3. Выберите Анализ и обучение данных>Модель графа (предварительная версия).

    Снимок экрана: меню нового элемента с параметром выбора модели Graph (предварительная версия).

    Подсказка

    Кроме того, введите "graph" в поле поиска и нажмите клавишу ВВОД , чтобы найти элементы графа.

  4. Введите имя модели графа и нажмите кнопку "Создать".

Создание графа

В представлении графа отображаются кнопки "Сохранить", "Добавить узел" и "Добавить ребра" и " Получить данные ".

Чтобы создать граф в Microsoft Fabric, выполните следующие действия.

  1. В модели графа выберите "Получить данные".

  2. В каталоге OneLake выберите данные из Fabric для использования в графе.

    Снимок экрана: меню выбора данных в OneLake.

    Замечание

    В этом кратком руководстве в качестве примера используются данные Adventure Works. Набор данных и результаты могут отличаться.

  3. Затем выберите Подключиться.

  4. Выберите таблицы данных и нажмите кнопку "Загрузить".

  5. Вы должны увидеть данные, доступные для использования в графе.

    Снимок экрана: представление данных в модели графа.

    Замечание

    Graph в Microsoft Fabric в настоящее время поддерживает следующие типы данных:

    • Логическое (значения: true и false)
    • Double (значения — 64-разрядные числа с плавающей запятой)
    • Целое число (значения — 64-разрядные целые числа со знаком)
    • Строка (значения — символьные строки Юникода)
    • Zoned DateTime (значения представляют собой метки времени с учетом смещения времени часового пояса)

Запуск моделирования

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

Добавление узлов

В этом разделе мы создадим узлы для каждой сущности в модели данных Adventure Works.

Метка узла Таблица сопоставления Сопоставляемый столбец
Клиент customers CustomerID_K
Заказ orders SalesOrderDetailID_K
Сотрудник employees EmployeeID_K
Продукт products ProductID_K
КатегорияПродукта категории продуктов CategoryID_K
ПодкатегорияПродукта подкатегории продуктов SubcategoryID_K
Поставщик vendors VendorID_K

Чтобы добавить узлы в граф, выполните следующие действия.

  1. В модели графа выберите "Добавить узел ", чтобы добавить новый узел в граф.

  2. В диалоговом окне "Добавление узла в граф " введите имя метки и выберите соответствующую таблицу сопоставления и столбец сопоставления.

    Снимок экрана: диалоговое окно добавления узла в граф.

    В этом примере метка узла — Customer, таблица сопоставления — "клиенты", а столбец сопоставления — "CustomerID_K".

  3. Нажмите кнопку "Подтвердить" , чтобы добавить узел в граф.

  4. Повторите процесс для всех остальных узлов. Вы должны увидеть все узлы, представленные в графе.

  5. Нажмите кнопку "Сохранить", чтобы начать создание графа.

    Снимок экрана: все узлы, добавленные в граф.

Добавьте ребра

В этом разделе мы создадим края для определения связей между узлами в модели данных Adventure Works.

Edge Таблица сопоставления Столбец отображения узлов источника Столбец сопоставления целевых узлов
Продает orders Сотрудник

EmployeeID_FK
Заказ

SalesOrderDetailID_K
Покупки orders Клиент

ИдентификаторКлиента_FK
Заказ

SalesOrderDetailID_K
содержит orders Заказ

SalesOrderDetailID_K
Продукт

ProductID_FK
isOfType products Продукт

ProductID_K
Подкатегория продукта

SubcategoryID_FK
принадлежит подкатегории продуктов Подкатегория продукта

SubcategoryID_K
КатегорияПродукта

CategoryID_FK
Производит vendorproduct Поставщик

VendorID_FK
Продукт

ProductID_FK

Чтобы добавить края в граф, выполните следующие действия.

  1. Выберите "Добавить край ", чтобы создать связь между узлами.

  2. В диалоговом окне "Добавление края " выберите таблицу сопоставления, исходные и целевые узлы и определите связь.

    Снимок экрана, показывающий диалоговое окно добавления ребра.

    В этом примере ребро определено как "продаёт", с таблицей сопоставления "заказы", соединяющей узел-источник "Employee" (EmployeeID_FK) с узлом-целью "Order" (SalesOrderDetailID_K).

  3. Нажмите кнопку "Подтвердить", чтобы добавить край в граф.

  4. Повторите процесс для всех остальных ребер. Вы должны увидеть все края, представленные в графе.

    Снимок экрана: все края, добавленные в граф.

На этом этапе вы создали все узлы и края для графа. Эти узлы и края являются базовой структурой модели графа.

Загрузка графа

Чтобы загрузить граф, нажмите кнопку "Сохранить". При выборе "Сохранить" выполняется проверка модели графа, загрузка данных из OneLake, создание графа и его подготовка к запросу.

Это важно

В настоящее время необходимо перезагрузить граф (нажав кнопку "Сохранить") всякий раз, когда модель или базовые данные изменяются.

Выполнить запрос к графу

Использование построителя запросов

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

Выполните следующие действия, чтобы перейти к построителю запросов и начать интерактивный запрос к графу:

  1. Выберите Режимы>Построитель запросов на домашней странице вашего графа. В этом представлении можно также создать набор запросов только для чтения, который имеет те же функции, что и ниже, и позволяет предоставлять общий доступ к результатам запроса.

  2. Выберите "Добавить узел ", чтобы просмотреть доступные узлы для запроса.

  3. Выберите узел, чтобы добавить его в запрос. В этом примере мы добавим узел Customer .

    Снимок экрана: выбор режима запроса.

  4. Здесь вы можете создать запрос, добавив узлы и края, применяя фильтры и выбрав свойства для возврата в результатах.

Использование редактора кода

Можно также запросить граф с помощью языка запросов графики (GQL).

Выполните следующие действия, чтобы перейти в редактор кода и начать запрос к графу с помощью GQL:

  1. Выберите режимы>Редактор кода на главной странице графа.
  2. Введите запрос GQL в поле ввода, например MATCH (n:`Order`) RETURN count(n) AS num_orders.
  3. Выберите "Выполнить запрос ", чтобы выполнить запрос.

Кроме того, можно выполнять более сложные запросы, такие как запросы, которые объединяют соответствующие шаблоны графов, фильтрацию, агрегирование, сортировку и ограничение top-k:

MATCH (v:Vendor)-[:produces]->(p:`Product`)->(sc:`ProductSubcategory`)->(c:`ProductCategory`), 
      (o:`Order`)-[:`contains`]->(p)
FILTER c.categoryName = 'Components'
LET vendorName = v.vendorName, subCategoryName = sc.subCategoryName
RETURN vendorName, subCategoryName, count(p) AS num_products, count(o) AS num_orders
GROUP BY vendorName, subCategoryName
ORDER BY num_orders DESC
LIMIT 5

Дополнительные сведения о поддержке языка GQL см. в руководстве по языку GQL.