当前位置:网站首页>Brief discussion on the implementation framework of enterprise power Bi CI /cd
Brief discussion on the implementation framework of enterprise power Bi CI /cd
2022-06-24 14:24:00 【Microsoft technology stack】

summary
In the enterprise scenario ,BI Reports are more of an item IT service , It is not just a report tool . Empathy , As I have stated many times before ,Power BI It's a set of services , And not just Power BI Desktop, Its development , Testing and deployment , Need to be effectively managed . thus , Whether it's based on compliance , Or the efficiency of cooperation , Enterprise implementation PBI Continuous integration and deployment , There's no harm in Baili .
However , At present, large and small enterprises at home and abroad , Has been successfully implemented PBI CI/CD There are not many cases , Although I can't fully understand what they do , But based on my own experience and understanding , I put forward two implementation ideas , For reader's reference .
Below I will help readers understand this idea through flow charts and some screenshots , But the specific technical operation here will not STEP-BY-STEP, Because there are documents on the official website , I can easily find it out by myself , And some of the things I've talked about in my previous blog , There is no need to repeat here .
programme A
These two solutions are not just theories , They are feasible in the actual technical implementation . The first one is (Plan A) It's the one I personally recommend , It USES OneDrive for business Do version control , use Power Automate Do continuous deployment , As follows :

This solution is applicable to small and medium-sized organizations with a single development team , It is also a large enterprise with multiple development teams , It's all applicable . For the part of continuous integration , The approach is to create a shared for the development team OneDrive, In the OneDrive You can create different folder For different PBI The project team uses , And configure it for DEV Work area of the environment :

In this mode , Developers do not need to deploy reports to the workspace , Just upload it to OneDrive that will do , The benefits are as follows :
Use OneDrive trusteeship DEV In the environment PBI Report file , Any version changes are synchronized with this workspace
advantageous to PBI Management of the development team , Division of labor , And version collaboration
make the best of OneDrive It has the function of version fallback , Make it easy PBI Document version control
Besides , What readers don't have to worry about is , In this mode PBI The connection and refresh between the dataset and the data source are not affected , Besides , Because we only need to DEV Workspace configuration OneDrive, Therefore, it will be released to UAT Or after the production environment ,OneDrive Any version changes in will only affect DEV Environmental Science , Does not affect the UAT And production .
Part of continuous deployment , We can just take advantage of Power Automate Of OneDrive or Sharepoint The trigger of , such , We can implement whenever a new version is uploaded to OneDrive after , Automatically trigger subsequent workflows :

So in the subsequent part of the workflow , We can call PBI REST API Yes Power BI Content to operate , For example, implement the deployment and refresh the corresponding data set :

notes : About using Power Automate call Power BI REST API, Please refer to this article
https://d-bi.gitee.io/pbi-rest-api-supplement/
programme B
Plan B Relatively speaking, it is a little troublesome , It USES GitHub or Bitbucket And other similar platforms ( Below to GitHub Substitute for ) As PBI File hosting platform and version management tools , While using Azure DevOps or Jenkins This special CI/CD Tools ( Below to DevOps Platform collectively ) Make continuous deployment . As follows :

In this mode , Developers will PBI file Push To GitHub, And in DevOps The platform establishes the pipeline and runs the specific deployment code to realize CI/CD, Its advantages are as follows :
Be able to use DevOps Platform rich CI/CD function
Be able to work with other types of development projects in the same enterprise CI/CD Management under the system
Be able to cooperate with other types of enterprises CI/CD project ( For example, some ETL project ) To integrate
But compared with Plan A The deficiency lies in the fact that GitHub Cannot be directly configured to Power BI work area , Can't be like the plan A Like that with DEV Real time environment synchronization , Therefore, an additional one is deployed to DEV Link ; On the other hand, the implementation of the scheme is a little more troublesome . Here's how I use Jenkins Implementation scheme B Screenshot of successful deployment of ( I am using Jenkins It really took a little trouble in the process of testing , But the specific steps are beyond the scope of this article , If you have the opportunity to file another complaint ).

by comparison , Use Azure DevOps The deployment process is much smoother . The figure below T1 and T2 I use two different methods to realize Power BI Success record of automatic deployment , On the ground , Whenever a developer puts a new version of PBIX File push to GitHub, be DevOps The pipe is automatically triggered , take PBIX Automatic deployment to PBI Workspace and complete data refresh .

total junction
Usually , I prefer the scheme A The pattern of , It's convenient , concise , Efficient , Easier to manage . But if PBI The integration and deployment of the need to comply with the unified deployment specification under the enterprise framework , Or need to work with ETL And other projects , So the plan B Maybe the only choice . Besides ,IT When the team actually implements this plan , There are still many aspects to consider , For example, error reporting , Version rollback , The dependency and deployment order between data sets and data flows , And this article aims to throw a brick to attract jade , The specific plan must be adjusted and improved by the team according to the actual situation .
Microsoft's most valuable expert (MVP)

Microsoft's most valuable expert is a global award awarded by Microsoft to third-party technology professionals .29 Over the years , Technology community leaders around the world , Won this award for sharing expertise and experience in its online and offline technology communities .
MVP It's a strictly selected team of experts , They represent the most skilled and intelligent people , He is an expert who puts great enthusiasm into the community and is willing to help others .MVP Committed to speaking 、 Q & a forum 、 Create a website 、 Blogging 、 Share video 、 Open source project 、 Organize meetings to help others , And help Microsoft technology community users to use Microsoft technology .
For more details, please visit the official website :
https://mvp.microsoft.com/zh-cn
Focus on Microsoft China MSDN Learn more about
Click on Join Microsoft MVP~
边栏推荐
猜你喜欢

laravel8使用faker调用工厂填充数据

How to solve the problem that iterative semi supervised training is difficult to implement in ASR training? RTC dev Meetup

卷积核、特征图可视化

leetcode.12 --- 整数转罗马数字

食品饮料行业渠道商管理系统解决方案:实现渠道数字化营销布局

Overview of SAP marketing cloud functions (IV)

Don't underestimate the integral mall. It can play a great role
![Generate binary tree according to preorder & inorder traversal [partition / generation / splicing of left subtree | root | right subtree]](/img/f7/8d026c0e4435fc8fd7a63616b4554d.png)
Generate binary tree according to preorder & inorder traversal [partition / generation / splicing of left subtree | root | right subtree]

Rasa 3. X learning series - it is a great honor to be a source code contributor of Rasa contributors, and to build and share the rasa community with rasa source code contributors all over the world!

Method of establishing unity thermodynamic diagram
随机推荐
[pytoch] quantification
laravel 8 实现Auth登录
根据前序&中序遍历生成二叉树[左子树|根|右子树的划分/生成/拼接问题]
Unit contour creation method
R语言plotly可视化:使用plotly可视化数据划分后的训练集和测试集、使用不同的形状标签表征、训练集、测试集、以及数据集的分类标签(Display training and test split
Grendao usage problems
C language ---18 function (user-defined function)
ESP32系列--ESP32各个系列对比
Unity 热力图建立方法
`Thymeleaf ` template engine comprehensive analysis
数字臧品系统开发 NFT数字臧品系统异常处理源码分享
MySQL log management, backup and recovery
智慧园区SaaS管理系统解决方案:赋能园区实现信息化、数字化管理
Don't underestimate the integral mall. It can play a great role
ssh-keygen 配置无需每次输入密码
Database considerations
Overview of SAP marketing cloud functions (III)
unity 等高线创建方法
Getting to know cloud native security for the first time: the best guarantee in the cloud Era
不要小看了积分商城,它的作用可以很大