什么是 Fabric 用户数据功能?

用户数据函数使你能够创建可重复使用的 Python 函数,这些函数可以跨 Fabric 调用,也可以从外部应用程序调用。 写一次业务逻辑,然后从管道、笔记本、激活器规则、Power BI的传输任务流,或通过REST端点的任何外部系统调用它。

用户数据函数提供无服务器计算环境,可在其中直接在Fabric中托管和运行自定义Python代码。 无论你是需要标准化产品类别、应用复杂的业务规则还是与外部 API 集成,都可以编写跨整个数据平台立即可用的函数。 该服务支持 Python 3.11.9 运行时PyPI 的公共库Fabric 数据连接

动画GIF,展示Fabric用户数据函数的界面。

准备好开始了吗? 按照此指南创建新的用户数据函数项使用 VS Code 扩展

为什么要使用Fabric的用户数据函数?

Fabric 用户数据功能提供了一个无服务器平台,用于托管您的自定义逻辑,并从不同类型的 Fabric 项目和数据源调用其逻辑。 使用该服务编写业务逻辑、内部算法和可重用函数,集成到您的Fabric解决方案中。

以下是关键优势:

  • 可复用性:将业务逻辑写成一次用户数据函数,并从多个 Fabric 项目调用——管道、笔记本、激活器规则和 Power BI 转译任务流。 当业务规则发生更改时,请更新函数一次,而不是在多个位置修改代码。
  • 无服务器托管:在不管理基础结构的情况下部署 Python 函数。 用户数据函数提供了无服务器的计算环境,内置认证功能,因此无需单独设置和维护API服务或容器。
  • 外部连接:每个函数都会自动公开其自己的唯一 REST 终结点,从而实现与外部应用程序、Web 服务和自定义客户端的集成。 从支持 HTTP 请求的任何系统调用函数。

关键功能

  • 写一次,随处运行:创建功能无论调用来自管道、笔记本、激活器规则、Power BI 还是外部 REST 调用,都能完全一致
  • 丰富的 Python 生态系统:使用 PyPI 中的任何包来构建复杂的逻辑,比如 pandas 用于数据处理、requests 用于 API 调用,或是适合您领域的专用库。
  • 安全数据访问:连接 Fabric 数据源(SQL 数据库、仓库、湖库、镜像数据库),并内置认证和安全功能
  • 开发和发布工作流:在发布之前测试函数,确保在调用之前验证更改

集成功能

用户数据功能与 Fabric 工作负载和外部系统无缝集成,使您能够构建全面的数据解决方案。

从 Fabric 项目调用

从任何 Fabric 工作负荷调用函数以集中业务逻辑并保持一致性:

  • 数据管道 ——将函数作为管道活动执行,用于数据转换、验证或编排逻辑
  • 笔记本 - 从 PySpark 或 Python 笔记本调用函数,以便进行数据科学工作流和探索分析
  • 激活器规则 - 触发函数以响应实时事件和流数据
  • Power BI跨事务任务流 - 直接从Power BI报表调用函数以获取交互式数据体验。 用户数据函数可以在请求负载中接收报告上下文——如当前的过滤和选择上下文——从而实现报告内的动作执行和写回场景。 写回完成后,报表中的数据可见性取决于报表的存储模式和刷新语义:更新的值会立即出现在 Direct Lake 或 DirectQuery 报表中,或者在任务流为导入模式报表触发的自动刷新之后显示。

连接到 Fabric 数据源

函数可以从 Fabric 平台安全地访问数据:

  • SQL 数据库——在 Fabric 中对 SQL 数据库进行读写操作
  • 仓库 - 结构化数据的读取和写入操作
  • Lakehouses - 读取和写入 Lakehouse 文件;对 SQL 分析终结点的只读访问权限
  • 镜像数据库 - 对镜像数据库数据的只读访问
  • 变量库 ——作为函数中的变量访问集中配置设置。
  • Fabric 中的 Cosmos DB - 连接 Fabric 容器中的 Cosmos DB,进行 NoSQL 数据操作。
  • 业务事件 ——检测运营数据的变化,并为下游应用发布业务事件。

除了托管连接外,用户数据函数还支持通用连接,你可以利用物品所有者的身份连接到 Fabric 项目或 Azure 资源。 通用连接生成包含所有者身份的 Microsoft Entra ID 令牌,适用于指定的受众类型,提供了一种灵活的方式,无需配置单独托管连接,即可与 Azure Cosmos DB 或 Azure 密钥保管库 等服务进行身份验证。 更多信息请参见 Fabric 项目的通用连接或 Azure 资源

在调用用户数据函数时,原生支持从 Power BI 转译任务流写回。 用户数据功能可以对 Fabric、仓库和湖屋文件中的 SQL 数据库执行添加、更新和删除操作,使其成为任务流驱动写回场景的理想集成点。

详细了解如何 连接到 Fabric 数据源

从外部应用程序调用

每个用户数据函数会自动暴露其独特的 REST 端点,以便与 Fabric 外部系统集成:

  • Web 应用程序 - 从 Web 应用、移动应用或单页应用程序调用函数
  • External 服务 - 与外部系统、微服务或旧应用程序集成,例如,将消息或更新发布到Microsoft Teams,或调用外部 REST API 作为任务流驱动操作的一部分
  • API 工作流 - 将函数与其他 API 链接在一起,以生成复杂的集成方案
  • 自定义客户端 - 从支持 HTTP 请求的任何编程语言或平台调用

用户数据功能的 REST 端点支持 Microsoft Entra ID 认证,确保外部系统的安全访问。 学习如何从Python应用调用用户数据函数

开始

准备好创建你的第一个用户数据函数了吗? 选择首选开发环境: