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的老师们学习一下。

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

相关推荐
njsgcs10 小时前
拆分多实体到装配体 solidworks c#
c#
何以解忧唯有撸码12 小时前
C# 视频录制监控系统
c#·winform
xiaoshuaishuai817 小时前
C# modbustcp的ack包通信延迟原因
网络·tcp/ip·c#
hixiong12318 小时前
使用C#自制一个截屏工具
c#
love530love20 小时前
Clink 在 VS 2022 Developer Command Prompt 中的配置与路径精简调校
人工智能·windows·microsoft·clink
少控科技21 小时前
小数典应用:小诗典
windows·c#
wuyoula1 天前
尹之盾企业版网络验证
服务器·开发语言·javascript·c++·人工智能·ui·c#
zdr尽职尽责1 天前
Untiy 处理Aseprite 资产 解决偏移问题
学习·unity·c#·游戏引擎
步步为营DotNet1 天前
.NET 11 与 C# 14 助力云原生应用安全架构升级
云原生·c#·.net
少控科技1 天前
小数典应用:农场环境数据采集监控
开发语言·windows·c#