Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Эта функция сейчас доступна в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения на уровне обслуживания и не рекомендуется для рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Для получения дополнительной информации см. Дополнительные условия использования для предварительных версий Microsoft Azure.
Базы данных Graph предлагают эффективный способ моделирования и запроса подключенных данных. В отличие от традиционных реляционных баз данных, которые хранят данные в таблицах, графовые базы данных представляют информацию как узлы (сущности) и ребра (связи), что упрощает более гибкое изучение сложных соединений и шаблонов.
Наиболее часто используемый тип базы данных графа реализует модель графа свойств с метками (LPG): сущности (узлы) и связи (ребра) могут иметь метки и свойства (пары "ключ—значение"). Эта гибкая модель позволяет использовать как проекты без схемы, так и проекты с управляемой схемой, а также дает возможность выразить богатую семантику. Поскольку связи хранятся явным образом в виде ребер, запросы проходят по связям, следуя ребрам вместо вычисления дорогостоящих объединений в процессе запроса.
Это важно
В этой статье исключительно используется пример графа социальных сетей.
Основные понятия базы данных Graph
- Узлы представляют такие сущности, как люди, продукты или места. Узлы могут иметь метки и свойства, описывающие их атрибуты. Например, узел Person может иметь такие свойства, как firstName, lastName и age.
- Края представляют, как связаны сущности, например FRIENDS_WITH, PURCHASED или LOCATED_IN. Ребра также могут содержать свойства и метки для кодирования метаданных связей.
- Свойства присоединяют сведения к узлам и краям (например, имени пользователя или дате края). Так как связи хранятся явным образом в качестве ребер, запросы перемещаются по графу, следуя соединениям, а не вычисляя их во время запроса.
Принцип работы связей запроса
Запросы графа извлекают связанную информацию, переходя от начального узла к его соседям, затем к соседям соседей и так далее. Усилие, которое выполняет обход, привязано к количеству рёбер, которых он касается (локальное окружение), а не к общему размеру набора данных. Это делает вопросы о путях, соединениях и шаблонах, таких как друзья друзей, короткие пути или зависимости с несколькими прыжками — естественные и эффективные для выражения.
Базы данных Graph используют языки запросов на основе шаблонов, такие как все более принятый язык запросов Graph (GQL), чтобы описать эти обходы кратко. GQL стандартизируется той же международной рабочей группой, которая контролирует SQL (ISO/IEC 39075), выравнивая графовые запросы с установленными стандартами базы данных.
Пример (сопоставление шаблонов с GQL):
MATCH (p:Person {firstName: "Annemarie"})-[:knows]->(friend)-[:likes]->(c:Comment)
RETURN c
ORDER BY c.creationDate
LIMIT 100
Этот шаблон считывается следующим образом: начиная с узла типа 'Person', связанного с Annemarie, следуйте по рёбрам :knows к каждому узлу, связанному с друзьями, а затем следуйте по рёбрам :likes к связанным узлам :Comment. Верните 100 новых комментариев, упорядоченных по дате их создания.
Моделирование и схема
Графовые модели данных допускают необязательное использование схемы: вы можете работать с фиксированной схемой, если требуется строгое управление, или развивать модель по мере появления новых типов узлов, связей или свойств. Такой подход снижает потребность в дублировании данных и позволяет командам объединять данные из нескольких источников без сильного предварительного перепроектирования.
Распространенные варианты использования для баз данных графов
Базы данных на основе графов тесно связаны с областями, где ценность определяется связями, например:
- Социальные сети
- Графы знаний
- Системы рекомендаций
- Сети мошенничества и риска
- Топология сети и ИТ
- Анализ зависимостей цепочки поставок
В этих сценариях вопросы меньше касаются отдельных записей, а больше связаны с тем, сколько сущностей вступают в связь и взаимодействуют через несколько переходов.
Когда следует рассмотреть базу данных графа
Выберите базу данных графа, когда:
- Основные вопросы включают пути, окрестности и шаблоны в подключенных данных
- Количество прыжков является переменной или неизвестно заранее
- Необходимо объединять и управлять связями между разрозненными наборами данных.
Если вы регулярно задаете такие вопросы, модель графа является естественным подходом.
Граф в Microsoft Fabric
Представление ваших данных в виде графа и их хранение в отдельной автономной базе данных графов часто приводит к издержкам, связанным с ETL (извлечения, преобразования и загрузки) и управлением. В отличие от этого, Graph в Microsoft Fabric работает непосредственно в OneLake, что сокращает или устраняет необходимость отдельных конвейеров ETL и дублирования данных. Рассмотрим следующие компромиссы:
- Перемещение и дублирование данных. Автономные базы данных графов обычно требуют извлечения, преобразования и загрузки данных в отдельное хранилище, что повышает сложность и может привести к дублированию наборов данных. Graph в Microsoft Fabric работает с OneLake, чтобы моделировать и запрашивать подключенные данные, не перемещая их.
- Операционные затраты: автономные стеки графов работают как отдельные кластеры или службы и часто несут расходы за простаивающую емкость. Рабочие нагрузки Graph в Fabric используют объединенные единицы емкости (CUs) с автоматическим уменьшением масштаба и централизованными метриками, что упрощает операции и может снизить затраты.
- Масштабируемость: Некоторые автономные базы данных графов зависят от масштабирования или кластеризации, специфичной для конкретного поставщика. Граф в Microsoft Fabric предназначен для крупномасштабных графов и использует масштабируемое шардирование на нескольких рабочих узлах для эффективной обработки больших данных.
- Инструменты и навыки. Для конкретных поставщиков систем графов могут потребоваться специализированные языки и отдельные платформы аналитики. Graph в Microsoft Fabric предоставляет унифицированное моделирование, запросы на основе стандартов (GQL), встроенные алгоритмы аналитики графов, интеграцию бизнес-аналитики и ИИ, а также средства анализа кода с низким уровнем или отсутствием кода. Эти возможности позволяют более широкому набору пользователей работать с подключенными данными.
- Управление и безопасность. Для отдельных развертываний графов требуются независимые настройки управления и безопасности. Graph в Microsoft Fabric использует управление OneLake, линию, и ролевое управление доступом (RBAC) в рабочей области, так что соответствие, аудит и разрешения остаются согласованными с остальной частью вашей среды Fabric.