Что такое функции пользовательских данных Fabric?

Функции пользовательских данных позволяют создавать повторно используемые функции Python, которые можно вызывать из разных Fabric и внешних приложений. Запишите бизнес-логику один раз и вызовите её из конвейеров, блокнотов, правил активатора, транслитических потоков задач Power BI или любой внешней системы через REST-конечные точки.

Функции пользовательских данных предоставляют бессерверную среду вычислений, в которой можно разместить и запустить пользовательский код Python непосредственно в Fabric. Независимо от того, нужно ли стандартизировать категории продуктов, применять сложные бизнес-правила или интегрироваться с внешними API, можно создавать функции, которые сразу же доступны на всей платформе данных. Служба поддерживает среду выполнения Python 3.11.9, общедоступные библиотеки из PyPI и подключения к данным Fabric.

Анимированный GIF, показывающий интерфейс функций пользовательских данных Fabric.

Готовы приступить к работе? Следуйте этому руководству, чтобы создать новый элемент пользовательских функций данных или использовать расширение VS Code.

Зачем использовать функции пользовательских данных Fabric?

Fabric User Data Functions предоставляет бессерверную платформу для размещения вашей пользовательской логики и её вызова из различных типов элементов Fabric и источников данных. Используйте этот сервис для написания бизнес-логики, внутренних алгоритмов и многоразовых функций, которые интегрируются в ваши решения Fabric.

Ниже приведены ключевые преимущества.

  • Повторное использование: Запишите свою бизнес-логику один раз в виде функции пользовательских данных и вызваните её из нескольких элементов Fabric — конвейеров, блокнотов, правил активаторов и транслитических потоков задач Power BI. При изменении бизнес-правил обновите функцию один раз, а не измените код в нескольких местах.
  • Бессерверное размещение: развертывание функций Python без управления инфраструктурой. Функции пользовательских данных обеспечивают серверную вычислительную среду с встроенной аутентификацией, поэтому вам не нужно настраивать и поддерживать отдельные API сервисы или контейнеры.
  • Внешнее подключение: каждая функция автоматически предоставляет собственную уникальную конечную точку REST, обеспечивая интеграцию с внешними приложениями, веб-службами и пользовательскими клиентами. Вызовите функции из любой системы, поддерживающей HTTP-запросы.

Ключевые возможности

  • Запишите один раз, запустите где угодно: создайте функции, которые работают одинаково — будь то из конвейеров, ноутбуков, правил активатора, Power BI или внешних REST-вызовов
  • Многофункциональная экосистема Python: используйте любой пакет из PyPI для создания сложной логики — pandas для обработки данных, запросов вызовов API или специализированных библиотек для вашего домена
  • Безопасный доступ к данным: Подключайтесь к источникам данных Fabric (SQL базы данных, хранилища, озёрные дома, зеркальные базы данных) с интегрированной аутентификацией и безопасностью
  • Разработка и публикация рабочего процесса: тестирование функций перед их публикацией, проверка изменений перед тем, как стать доступными для вызова

Возможности интеграции

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

Вызов из элементов Fabric

Вызывайте свои функции из любой рабочей среды Fabric для централизованного управления бизнес-логикой и обеспечения согласованности.

  • Конвееры данных — выполняют функции в виде деятельности конвейера для преобразований данных, валидации или логики оркестрации
  • Блокноты — вызов функций из PySpark или блокнотов Python для рабочих процессов обработки данных и исследовательского анализа
  • Правила активации — активация функций в ответ на события в режиме реального времени и потоковую передачу данных
  • Power BI потоки транслитических задач — вызов функций непосредственно из отчетов Power BI для интерактивного взаимодействия с данными. Функции пользовательских данных могут получать контекст отчёта — такой как текущий фильтр и контекст выбора — в полезной нагрузке запроса, что позволяет выполнять действия и записывать обратно из отчёта. После завершения записи видимость данных в отчете зависит от режима хранения отчета и семантики обновления: обновленные значения отображаются немедленно для отчетов Direct Lake или DirectQuery или после автоматического обновления, активируемого потоком задач для отчетов в режиме импорта.

Подключение к источникам данных Fabric

Функции могут безопасно получать доступ к данным из всей платформы Fabric:

  • SQL базы данных — операции чтения и записи на базах данных SQL в Fabric
  • Хранилища — операции чтения и записи для структурированных данных
  • Lakehouses — чтение и запись файлов Lakehouse; Доступ только для чтения к конечным точкам аналитики SQL
  • Зеркальные базы данных — доступ только для чтения к зеркальным данным базы данных
  • Библиотека переменных — получайте доступ к централизованным настройкам конфигурации как к переменным в ваших функциях.
  • Cosmos DB в Fabric — Подключитесь к Cosmos DB в контейнерах Fabric для операций с данными NoSQL.
  • Бизнес-события — выявлять изменения в операционных данных и публиковать бизнес-события для последующих приложений.

Помимо управляемых соединений, функции пользовательских данных поддерживают общие соединения, которые можно использовать для подключения к элементам Fabric или ресурсам Azure, используя идентификатор владельца предмета. Общие соединения генерируют токен Microsoft Entra ID с идентификацией владельца для определённого типа аудитории, предоставляя гибкий способ аутентификации с такими сервисами, как Azure Cosmos DB или Azure Key Vault, без настройки отдельных управляемых соединений. Для получения дополнительной информации см. раздел «Общие соединения для элементов Fabric» или ресурсы Azure.

Обратная запись из транслитических потоков задач Power BI поддерживается нативно при вызове функций пользовательских данных. Функции пользовательских данных могут выполнять операции добавления, обновления и удаления SQL-баз данных в Fabric, складах и файлах Lakehouse, что делает их идеальной точкой интеграции для сценариев обратной записи, основанной на потоке задач.

Дополнительные сведения о подключении к источникам данных Fabric.

Вызов из внешних приложений

Каждая функция пользовательских данных автоматически открывает свою уникальную конечную точку REST для интеграции с системами вне Fabric:

  • Веб-приложения — вызов функций из веб-приложений, мобильных приложений или одностраничных приложений
  • External services — интеграция с внешними системами, микрослужбами или устаревшими приложениями, например публикация сообщений или обновлений для Microsoft Teams или вызов внешних ИНТЕРФЕЙСов REST API в рамках действий, управляемых потоком задач.
  • Рабочие процессы API — цепочка функций с другими API для создания сложных сценариев интеграции
  • Пользовательские клиенты — вызов с любого языка программирования или платформы, поддерживающей HTTP-запросы

Конечные точки REST для функций пользовательских данных поддерживают аутентификацию Microsoft Entra ID, обеспечивая безопасный доступ с внешних систем. Узнайте, как вызывать функции пользовательских данных из приложения на Python.

Начало работы

Готовы создать свои первые функции пользовательских данных? Выберите предпочтительную среду разработки: