Microsoft Fabric - 试一下在Blazor应用中使用 GraphQL API去连接Lakehouse

1.简单介绍

Microsoft Fabric是微软数据处理的一个统一的大平台,Data Engineer, Data Sciencist, Business Analysis人员都可以在这个平台上面工作。统一的大平台也为AI的变革提供了数据基础。Microsoft Ignite中,Microsoft Fabric也是比较重要的一个topic,其中展示出来的关于Microsoft Fabric的架构图也发生了一些变化

下面是经常看到的Microsoft Fabric图片

以下是一次Ignite 大会中老师演示出来的,

note, Data Engineering,Data Science, Data Warehouse被归类到了Analytics中,同时加上了Databases, Industry Solutions和Partner Workloads

这次主要尝试一下Microsoft Fabric中GraphQL API这个特性,试验一下使用GraphQL API去获取Lakehouse的数据并展示在web应用程序中

2.具体说明

假定当前Microsoft Fabric中已经有一个LakeHouse table如下图

2.1 创建GraphQL API

  1. 在Microsoft Fabric的Workspace中,点击New item按钮
  1. 选择 API for GraphQL 选项进行GraphQL API的创建,如下图
  1. 在弹出的窗口中,输入API for GraphQL的名字,然后点击Create按钮,
  1. 在API for GraphQL界面中,点击 Select data source 方框,
  1. 弹出的 connectivity option选择 SSO相关的选项,点击OK
  1. 选择要连接的Lakehouse
  1. 选择要连接的table
  1. 在出来的界面中,点击Copy endpoint
  1. 点击Copy按钮即可复制GraphQL API 的链接了

2.2 注册应用程序

在Microsoft Extra ID中创建一下应用程序

note, 记录一下Application ID, Tenant ID和Secret Value

同时给注册应用程序分配一下权限如下图

2.3 分配权限给Service Principal

这边是在试验的环境中,直接在Workspace中进行权限的分配了,如果是正式的业务系统,则建议只在对应的LakeHouse和GraphQL API中进行权限的分配

2.4 制作Blazor应用程序

这边把应用分成了Web API和Blazor两个部分

2.4.1 Web API

在Web API项目中连接Microsoft Fabric并获取Lakehouse中的数据(使用GraphQL API)

Web API项目要使用Microsoft.Identity.Client进行身份的认证,以下是进行Microsoft Extra ID身份认证和使用GraphQL API获取数据的代码

2.4.2 Web应用

这边使用的是Blazor应用,采用Blazor Server渲染模式,从Web API项目中获取数据并展示在Blazor界面中。其中Blazor界面使用到了开源社区的Ant Design Blazor框架

2.5 运行一下

启动项目,应用从Lakehouse中获取数据之前,会使用到Microsoft Extra ID进行身份的认证,会弹出如下的身份确认窗口,选择自己的帐户

登录成功后,会显示如下的提示在页面中

最后在Blazor的页面上会有Lakehouse的数据展示出来

3.总结

以上简单记录了一下使用Microsoft Fabric的GraphQL API的过程,感觉其中细节很多。连接Fabric GraphQL API可以使用后端的Web应用程序或者控制台程序,也可以在前端应用中使用,比如React程序。

Microsoft Fabric的体量非常庞大,同时新的功能也发布得很快。还需要跟着Microsoft Fabric的老师们学习一下。

本文如果哪里有错误的地方,麻烦告之,谢谢谢谢

相关推荐
在世修行7 小时前
从零打造 C# 工业视觉检测系统(十一):Task 异步编程与实时性保障
开发语言·c#·task异步
czhc11400756637 小时前
2026-08-09 学习笔记:背钻检测核心概念
c#
yanaiding19 小时前
C# WPF 独立开发看图工具 PixSight 经验介绍(二)—— 水印模块开发实录
图像处理·c#·wpf·个人开发
淡海水19 小时前
15-02-YooAsset面试篇-Unity架构设计与源码
java·unity·面试·c#·游戏引擎·yooasset
-银雾鸢尾-1 天前
C#中的多线程
开发语言·c#
starzy19901 天前
Soloop 智能视频创作全流程实战指南
数据库·microsoft·音视频
在世修行1 天前
从零打造 C# 工业视觉检测系统(九):工厂模式实现 SQL Server / MySQL / SQLite 三库切换
mysql·sqlite·c#·工厂模式
LccKyI1 天前
C#学习day04
经验分享·笔记·学习·c#
XUHUOJUN1 天前
Microsoft Entra Hybrid Identity Day-2 Operations 实战手册:用户、组、对象过滤、MIM 与故障排查
microsoft·microsoft 365
LccKyI1 天前
C#学习day05(开发福彩双色球系统附思维导图)
开发语言·学习·c#