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

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

相关推荐
周杰伦fans13 小时前
AutoCAD C# 二次开发:如何精确监听工作空间切换事件
前端·c#
用户37215742613514 小时前
如何使用 C# 自动调整 Excel 行高和列宽
c#
AI导出鸭PC端14 小时前
智谱清言怎么生成word文档?AI导出鸭终结乱码烦恼
人工智能·ai·c#·word·豆包·ai导出鸭
terry60015 小时前
从流畅交互到高可用:企讯通Qcaptcha滑动拼图的毫秒级响应与容灾设计
web安全·json·asp.net·信息与通信·数据库架构
xiaoshuaishuai816 小时前
C# AvaloniaUI 中旋转
开发语言·c#
weixin_4280053016 小时前
C#调用 AI学习从0开始-第2阶段(Function Calling+工具调用智能体)-第9天实战-实现计算器工具
开发语言·学习·c#·functioncalling·ai实现计算器工具
guygg8816 小时前
基于C# + Halcon的通用ROI绘制工具
stm32·单片机·c#
Yan-英杰16 小时前
从零玩转搜索引擎 API: 多引擎整合实战
服务器·前端·microsoft
步步为营DotNet17 小时前
Blazor 在边缘计算客户端应用中的创新实践与深度解析
人工智能·microsoft·边缘计算
双河子思17 小时前
《代码整洁之道》——读书笔记(持续更新)
开发语言·c++·c#