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


Использование базы данных SQL в обратном ETL

Применимо к:База данных SQL в Microsoft Fabric

В этой статье описывается, как использовать базу данных SQL в Fabric в качестве цели для обратного ETL в пространстве данных на базе Fabric. Он предоставляет рекомендации по архитектуре, операционные шаблоны и рекомендации по внедрению для перемещения проверенных данных из аналитических источников (таких как хранилище данных Microsoft Fabric или Fabric Lakehouse) в базу данных SQL в Fabric для использования рабочих операций приложениями, API и интерфейсами реального времени.

Что такое обратный ETL в Fabric?

Многие клиенты потратили значительное время и усилия на создание процессов извлечения, преобразования, загрузки (ETL) для преобразования необработанных операционных данных в более подробные аналитические данные, которые можно использовать для бизнес-отчетов. Конечный результат процесса ETL обычно представляет собой аналитическое хранилище данных, такое как склад данных или lakehouse, к которому обращается уровень отчетности, например, Power BI. Эта архитектура хорошо обслуживает бизнес-пользователей, но отчеты относительно статически и аналитические сведения могут быть получены только путем вмешательства человека. С помощью обратного ETL можно передать преобразованные данные обратно в операционные системы, чтобы приложения и агенты могли получать аналитические сведения из этих проанализированных данных в реальном времени. Обратный ETL отправляет данные из фактов и измерений в аналитических хранилищах в обслуживающий слой, где его можно получить с помощью конечных точек, таких как GraphQL или непосредственно через запросы TDS (табличный поток данных).

Хотя операционные приложения можно подключить непосредственно к хранилищу или озеру данных, эти хранилища данных предназначены для аналитических рабочих нагрузок. Операционные хранилища данных, такие как база данных SQL в Fabric, предназначены для поддержки транзакционных запросов, а также обеспечивают более высокую производительность и масштабируемость рабочих нагрузок. Операционные базы данных также предоставляют возможность дополнительного обогащения данных с помощью векторных встраиваний и дополнительных метаданных для облегчения векторного и гибридного поиска, а также для генерации с дополнением (RAG).

  • В этом шаблоне склад или озеро остается аналитической системой записи.
  • База данных SQL в Fabric служит операционным хранилищем, которое обеспечивает низкую задержку, уточнение индексирования, строгие ограничения данных и связей, а также соглашения об уровне обслуживания, ожидаемые командами приложений.

Общие целевые объекты обратного ETL

Общие целевые объекты обратного ETL обычно представляют курированные срезы данных с высоким уровнем ценности, которые операционные системы могут использовать с минимальным преобразованием. Эти целевые объекты предназначены для обеспечения доступа к доверенным данным с низкой задержкой при сохранении бизнес-логики, применяемой на аналитическом уровне. Вот некоторые примеры.

  • Данные клиента и пользователя (например, метрики взаимодействия, такие как активность сеанса, использование функций и взаимодействие)
  • Данные о продажах и маркетинге (например, метрики оценки, такие как склонность к покупке, оценки взаимодействия, вероятность конверсии)
  • Операционные и транзакционные данные (например, данные заказа и инвентаризации, такие как уровни запасов, состояние заказа и сроки доставки)
  • Производные данные ИИ/ML (например, персонализированные рекомендации по продуктам, прогнозные оценки, такие как риск оттока, вероятность дополнительных продаж или анализ тональности)

Механизмы перемещения данных

Процесс начинается с определения исходных данных, задания назначения и выбора механизма перемещения данных. Выберите один или несколько следующих механизмов для перемещения данных из аналитического хранилища в базу данных SQL в Fabric.

Подсказка

В качестве общего правила используйте:

  • Каналы для простого копирования и запланированных загрузок.
  • Потоки данных 2-го поколения для преобразований с низким кодом.
  • Spark для сложной и крупномасштабной обработки (включая машинное обучение).
  • Межэлементный T-SQL, где это возможно, чтобы поддерживать операции, ориентированные на SQL, например, объединение таблицы в SQL-базе данных с таблицей в хранилище или конечной точке аналитики SQL.
Механизм Используйте, когда Преимущества Рекомендации
Fabric Конвейеры Данных Вам нужны управляемые, повторяемые процессы (пакетные или микропакетные) операций копирования данных Интеграция высшего уровня; поддерживает водяные знаки и хранимые процедуры Конкурентность; масштабирование базы данных SQL при высоких нагрузках
Поток данных 2-го поколения Вам нужны преобразования данных с низким кодом и улучшенная логика процесса Удобное для бизнеса; поддерживает формирование и очистку столбцов Низкая пропускная способность для больших объемов; планирование разбивки.
Spark (записные книжки и задания) Вам нужны сложные преобразования на основе кода и крупномасштабные изменения Полный контроль над кодом; эффективное чтение дельта-процессов; поддержка записи JDBC Проверка подлинности и пакетная обработка; избегайте больших транзакций
Запросы T-SQL между элементами Необходимо перемещение в базе данных SQL между элементами Fabric Минимальная сантехника; SQL-native; легко запланировать

Эталонная архитектура: обратный ETL в SQL-базу данных в Fabric

Эталонная архитектура для обратного ETL в Fabric объединяет основные строительные блоки, необходимые для введения в эксплуатацию курированных аналитических данных. В нем показано, как данные из доверенных аналитических источников проходят через слои преобразования и попадают в структурированную базу данных SQL. Операционная база данных служит интерфейсом для подчиненных систем. Этот шаблон гарантирует, что приложения, API и средства создания отчетов могут получать доступ к данным с низкой задержкой и высоким качеством без ущерба для целостности аналитической учётной системы.

Основные компоненты этого потока включают:

  • Источник: курируемые наборы данных из хранилища данных Fabric или Lakehouse (Delta).
  • Преобразования: обратные преобразования ETL, применяемые с помощью Pipelines, Dataflow Gen2, Spark или кросс-объектного T-SQL.
  • Цель: база данных SQL в Fabric с определенными схемами приземления, истории (необязательно), карантина и обслуживания.
  • Потребители: приложения с помощью GraphQL или TDS, API и Power BI для панелей мониторинга и отчетов в режиме реального времени.

Схема обратной эталонной архитектуры ETL, включающей базу данных SQL в Fabric.

Components

Следующие компоненты участвуют в общем потоке для использования базы данных SQL в Fabric в качестве обратного целевого объекта ETL.

Обслуживание и посадочные схемы

  • Соотнесите исходные данные с соответствующими схемами назначения в SQL базе данных Fabric.
  • При желании можно поддерживать history схему для аудита.
  • Используйте схему quarantine для отклонений (проблемы с качеством данных).
  • Определите схему serving для нижнего потребления с соответствующими ограничениями и индексированием.

Оркестрация

  • Запланировать передачи в Fabric с помощью конвейеров, потоков данных или заданий Spark.
  • Используйте встроенный план планирования для настройки каденции, времени начала и часового пояса.
  • Планирование записных книжек Spark с помощью портала Fabric или API.
  • Мониторинг сквозных процессов в концентраторе мониторинга системы Fabric.

Consumption

  • Выдайте данные через конечные точки GraphQL или T-SQL посредством TDS с использованием клиентских библиотек, таких как ADO.NET (и других).
  • Создание панелей мониторинга и визуализаций Power BI непосредственно через базу данных SQL в Fabric.

Управление и безопасность

  • Используйте идентификатор Microsoft Entra для проверки подлинности и авторизации.
  • Объедините разрешения ролей рабочей области Fabric и разрешения SQL для точного управления.
  • При необходимости настройте ключи, управляемые клиентом , для шифрования неактивных данных.
  • Производите аудит доступа и защищайте передаваемые данные с помощью Private Link.

Обслуживание приложений

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

После приземления и обновления данных в базе данных SQL в Fabric:

  • Для обработки операционных рабочих нагрузок предоставьте данные через конечные точки GraphQL или протокол TDS, используемых через ADO.NET и другие клиентские библиотеки. Например, укажите сведения о продукте, цепочке поставок или вариантах использования службы клиентов.
  • Сопоставьте набор данных с Power BI, чтобы предоставить панели мониторинга в режиме реального времени и возможности самостоятельной аналитики.

Рекомендации, связанные с структурой

База данных SQL в Fabric использует тот же ядро СУБД SQL, что и База данных SQL Azure , а также управляется, защищается, оплачивается и управляется с помощью портала Fabric. Он также предлагает встроенное зеркальное отображение в файлах Delta/Parquet , хранящихся в Microsoft OneLake, доступ к ним осуществляется через конечную точку аналитики SQL. Так как он находится в среде Microsoft Fabric, существует несколько рекомендаций, которые следует учитывать при создании дизайна:

  • Четность функций: база данных SQL в Fabric конвергентируется с базой данных SQL Azure. Проверьте определенные функции , необходимые для обеспечения соответствия и отслеживания обновлений стратегии.
  • Модель безопасности: база данных SQL в Fabric использует только проверку подлинности идентификатора Microsoft Entra. Планируйте удостоверения для конвейеров, потоков данных и заданий Spark соответствующим образом.
  • Репликация: база данных SQL в Fabric автоматически реплицирует данные только для чтения в OneLake. Эта синхронизация полезна для создания отчетов и анализа, а база данных остается доступной для рабочих нагрузок чтения и записи.