从Power BI 到 Power Platform:低代码应用开发实战

978-7-115-57100-7
作者: BI使徒工作室 雷元陈桂健
译者:
编辑: 郭媛

图书目录:

详情

低代码开发平台是企业实现数字化转型的有效手段。近几年,各大软件公司纷纷布局和推出低代码开发平台,而微软公司的Power Platform 已占据世界500 强97%企业的市场。 本书从Power Platform 基础理论出发,并着手实践,除了介绍大众熟知的数据可视化工具Power BI,还介绍Power Apps、Power Automate、Power Virtual Agents 及通用组件(AI Builder、Data Connector、Dataverse)等,帮助读者全方位了解Power Platform 的工作原理和业务场景,全面掌握低代码应用开发、流程自动化、数据分析与可视化、智能聊天机器人等应用技能。 本书内容循序渐进,指导性强,尤其适合非IT 背景的业务人员,及对数字化转型,特别是对全民开发、低代码开发感兴趣的读者阅读、使用。

图书摘要

版权信息

书名:从Power BI 到 Power Platform:低代码应用开发实战

ISBN:978-7-115-57100-7

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。


著    BI使徒工作室 雷元

     陈桂健

责任编辑 郭 媛

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315


低代码开发平台是企业实现数字化转型的有效手段。近几年,各大软件公司纷纷布局和推出低代码开发平台,而微软公司的Power Platform已占据世界500强97%企业的市场。

本书从Power Platform 基础理论出发,并着手实践,除了介绍大众熟知的数据可视化工具Power BI,还介绍Power Apps、Power Automate、Power Virtual Agents及通用组件(AI Builder、Data Connector、Dataverse)等,帮助读者全方位了解Power Platform 的工作原理和业务场景,全面掌握低代码应用开发、流程自动化、数据分析与可视化、智能聊天机器人等应用技能。

本书内容循序渐进,指导性强,尤其适合非IT背景的业务人员,及对数字化转型,特别是对全民开发、低代码开发感兴趣的读者阅读、使用。


很长时间以来,“数字化”和“数字化转型”一直是各行各业热议的话题。可是,对于什么是数字化、怎么进行数字化转型却一直众说纷纭,莫衷一是。一方面,这是因为数字化的话题太宽泛,而每个行业都有其数字化转型的侧重点(例如基建行业的数字化和零售行业的数字化就有很大的不同)。另一方面,由于信息技术发展迅速,新的技术层出不穷(例如最近几年兴起的云计算、大数据、人工智能等),这也不断为数字化带来新的含义。然而,大家虽然都了解数字化的重要性和迫切性,但却不知从何处入手。

对于一般的企业而言,数字化转型意味着将研发、生产、销售、管理等各环节与各种数字化技术—互联网、大数据、云计算、人工智能等相结合,从而促进企业运营效率的提升。这是一个大而全、自上而下的过程,也是漫长的过程。然而,当今社会瞬息万变,业务机会转瞬即逝,在很多时候不允许企业在数字化转型中耗费漫长的时间和大量的精力。

“全民开发”的概念应运而生,即每个人都应该有能力设计和开发应用软件,都应能引领数字化转型。这是一种自下而上的数字化转型概念。一方面,每个人都十分熟悉与自己日常打交道的流程和数据,对它们的数字化需求有最深刻的理解;另一方面,最近几年自助式、低代码的应用开发平台和数据分析工具日臻成熟,也让普通开发者有了快速开发的能力,能够快而准地开发小而精的应用软件。所谓低代码(包括无代码)开发,就是以“拖、拉、拽”的可视化方式,让软件开发人员及非IT专业背景的普通业务人员,以少量代码或零代码的方式开发应用软件。

微软公司的Power Platform是低代码和无代码开发平台的代表,它完整地包含了数字化的几大关键要素:数据和流程建模、统一数据存储、用户界面设计、自动流程执行、数据分析与可视化、人工智能和机器学习等。使用Power Platform,可以让企业里的每个人都能自行开发应用,这将极大地推动企业数字化转型。你可以想象IT行业传统的几大工作,如应用开发工作、自动化开发工作、分析开发工作和运维工作,分别被Power Platform平台的Power Apps、Power Automate、Power BI、Power Virtual Agents增强甚至取代,而这些应用还有三大通用组件AI Builder(人工智能应用服务)、Dataverse(通用数据服务)、Data Connector(数据连接器)的无缝支持,形成强大的生态系统。微软公司甚至认为,经过数字化转型后,每家公司都将成为软件公司。“全员coding”的梦想时代已然来临,“数字公民”显然已不仅仅是一个概念。一个成功的数字化企业应该是数字系统、数字文化、数字人员的综合载体。

本书核心价值在于帮助读者快速、全面、准确地理解Power Platform并赋能读者自助进行低代码开发。全书共6章。

第1章简要介绍Power Platform的构成和各个应用的功能,让读者大致了解能用Power Platform来做什么。

第2章深入介绍Power Platform中Power BI的数据分析和可视化报表功能。

第3章重点介绍如何使用Power Apps来进行低代码应用开发。我们将会通过几个有意思的例子,带领读者通过拖曳控制和编写简单公式的方式来开发应用软件。

第4章介绍Power Automate工作流。Power Automate可以实现流程的自动执行,支持以API的方式连接多种软件和服务,也支持通过RPA的方式模拟鼠标、键盘的操作。在这一章中,我们会从实例出发,由浅入深地带领读者创建和运行工作流。

第5章简要介绍Power Virtual Agents。使用Power Virtual Agents可以很方便地创建聊天机器人。聊天机器人是人工智能技术的典型应用,可以部署在软件和网站中作为用户访问的入口,让用户交互的过程变得更智能和有趣。在这一章中,我们会通过一个例子带领读者创建智能聊天机器人。

第6章是综合应用。我们会综合利用Power Platform的各个应用,创建一个完整的应用,用于记录和分析用户的日常饮食情况,并在饮食异常(如热量过高)时向用户发出警报。

本书适合对数字化转型,特别是对全民开发、低代码开发感兴趣的读者。读者将会从一个个实例中,由浅入深地习得低代码开发的方法和技巧。由于国内、国际版Power Platform试用性的区别,本书中所有示例场景均基于国际版Power Platform,且考虑到国内读者阅读习惯,已设置中文显示界面,但由于国际版翻译不完全,部分界面中的文字非中文,请读者见谅。

数字化技术日新月异,层出不穷,希望本书能起到抛砖引玉的作用,供读者入门和参考。由于编者水平所限,书中疏漏之处在所难免。若蒙读者诸君不吝告知,将不胜感激。让我们乘上这条低代码的Power Platform渡轮,到达数字化海洋的彼岸。时不我待,carpe diem(抓住机遇,把握现在)!

最后希望每位读者都能成为数字化转型浪潮中的领军者!

雷元

2021年5月1日


今天,当几乎所有的企业都在谈论着数字化转型时,微软已经在自我革新和转型的道路上探索了多年,并且持续通过微软云矩阵提供的能力与无数企业和用户一同规划着未来的“图景”。在数字化转型的旅程中,我们看到越来越多的企业和用户意识到释放创新能力所带来的价值和魅力,在构建“强大又全面”的基础架构和业务平台的基础之上,也对“小而美”的快速响应和构建解决方案能力情有独钟。这使得技术与业务见解之间的边界变得模糊,平台间的融合变得更加流畅和自然,而所有这一切不再需要复杂、漫长的过程,“低代码”的方式让每一个人都有机会成为数字化转型旅程的参与者,而Power Platform就是这个旅程的推进剂。

相信许多读者认识微软的Power Platform家族产品是从Power BI开始的。Power BI是微软众多可以引领一个技术领域发展的产品之一,在2021年2月Gartner发布的《分析和商业智能平台魔力象限报告》中,微软再一次领跑“领导者”象限,这已经是第14次蝉联殊荣,并继续呈现进一步领先的态势。经过不断的技术演进和迭代,如今的Power BI已经融入Power Platform的家族,成为这个被微软现任CEO萨蒂亚· 纳德拉(Satya Nadella)称为“Next Big Thing”(“下一件大事”)的微软新一代低代码应用开发平台。

在了解Power Platform具体的组成之前,我们先来观察一下来自外部商业世界和社会的变化。

在这样颠覆式的影响下,让每个人都具备开发技能的工具—低代码平台成为了一种必然。

Power Platform由Power BI、Power Apps、Power Automate、Power Virtual Agents四大模块组成,除Power BI之外,Power Apps为用户提供了“搭积木”式的开发模式,在无须写一行代码的情况下通过拖、拉、拽的方式完成开发,此外通过与Excel函数公式相似的Power Platform语言Power Fx,以及对Azure平台高级服务的调用,帮助专业开发人员快速开发复杂应用。Power Automate则扮演自动执行流程的角色,集成RPA、DPA与AI,支持基于API、UI、桌面与云端的自动化,提供基于AI的流程挖掘功能,并与Power Apps无缝衔接。而借助Power Virtual Agents,业务人员可以在无代码的模式下搭建聊天机器人。

Power Platform是一种包容性技术和工具,它打破了束缚我们多年的角色间的技术壁垒,释放了不同角色的人对业务的经验和对极致效率的追求,通过易用性赋予每一个人轻松连接技术和业务的能力,不断解决问题,优化业务和流程的能力,从数据中获取洞察力和进行决策的能力,从而创造一种创新的企业文化,这将引领企业和每一个参与者实现从未企及的价值。

这本书详细介绍Power Platform家族成员的强大功能。作者通过深入浅出的案例来阐述每个应用及组件的工作原理和业务场景,并且让读者有能力融会贯通,以构建完整的业务应用。这正是Power Platform能够带给每一个业务用户的价值。愿你在这本书中感受到这样的力量与价值。

康容

微软大中华区副总裁,市场营销及运营总经理


数字科技改变人类生活,为企业效益带来了指数型的提升。在那些颠覆历史的转折点上,大多数人是时代的见证者,极少数人是贡献者,但只有抓住了机遇的那一批人,才能在深度参与改变世界的同时获得跃级式的成长。

新时代从不缺少技术转型的机遇。关键的问题是,我们怎样才能够成为稀缺资源,也就是转型的贡献者乃至领导者?这里有3个关键步骤。

1.重新定义能力的边界

看到过身边的一些朋友,因业绩压力到处拜访,积累行业资源;为了查询数据不用求人,开始自学SQL;为了成为业务领域专家,到一线现场苦心磨炼……突破舒适区需要强大的决心和驱动力,起初往往极度不适,但当尝到了突破能力边界的甜头时,就意味着你已经掌握了真正的优势。

也看到过许多人流露出故步自封的想法:我没有IT背景经验,也不懂编程;我只负责后台支持,对前台业务不熟悉;我擅长写代码,但不爱与人交流……给自己设定默认的边界,成长的天花板也就在此了。如果我们想要跃级式地成长,就要以积极学习的心态,勇敢面对未知。

穿越非舒适区来获取新能力,就好比村上春树对暴风雨的描述:“暴风雨结束后,你不会记得自己是怎样活下来的,你甚至不确定暴风雨真的结束了。但有一件事是确定的:当你穿过了暴风雨,你早已不再是原来那个人。”

2.尝试创新工具

相信技术创新的力量是可以轻松颠覆现状的。多年以前,我和几位同事刚开始接触Power BI,惊奇地发现一个人从数据集的建立、准备、建模,到做成可视化看板,再到分发给业务人员,全流程都可以通过无代码或低代码的方式搞定。这意味着,达成同样的解决方案,可能别人的产品文档刚开始写,我们已经用Power BI把极具震撼力的产品做出来了,而且基于云计算的软硬件开发成本可以忽略不计。

驾驶的理想形态是什么?无人驾驶。数据分析产品的理想形态是什么?人工智能。我们提出问题计算机可以自动输出答案。关于我们工作中使用的工具,理想的产品是什么样子?在朝向目标努力的路上,一定会有大量的产品不断涌现出来。如果你能够比别人更快地掌握一项创新工具,这就是你的竞争优势。

3.拼装组合

拼装组合就好比有人靠知识内涵挣钱,有人靠操作技能挣钱,如果鱼和熊掌兼得,再把优势结合起来,岂不是达到让人嫉羡的境界?这也是微软这套工具Power Platform的理念—“Powerful alone. Better together”,单独应用已经很强大,放在一起更好。

数字化转型是大势所趋,这本书正是顺势而为,帮助广大读者看到未来,基于微软的Power套件组合,构建属于自己的强大工具箱,从而抓住这个时代的机遇。

我相信只要有敢于突破能力边界的决心,在创新工具的驱动下,人人成为专家的愿望将逐渐成为现实,人人可以成为应用开发者、工作流工程师、数据分析师,人人又都可以是产品经理、业务专家。当我们拥有不止一项卓越的技能,并把它们组合在一起时,势必迸发出前所未有的生产力。而作为生产力的贡献者,也必将在数字化转型的过程中实现更大的自我进化。

马世权

公众号“PowerBI大师”创始人,《从Excel到Power BI:商业智能数据分析》作者


本书由异步社区出品,社区(https://www.epubit.com/)为您提供相关资源和后续服务。

本书提供如下资源:

要获得以上配套资源,请在异步社区本书页面中单击,跳转到下载界面,按提示进行操作即可。

作者和编辑尽最大努力来确保书中内容的准确性,但难免会存在疏漏。欢迎您将发现的问题反馈给我们,帮助我们提升图书的质量。

当您发现错误时,请登录异步社区,按书名搜索,进入本书页面,单击“提交勘误”,输入勘误信息,单击“提交”按钮即可(见下图)。本书的作者和编辑会对您提交的勘误进行审核,确认并接受后,您将获赠异步社区的100积分。积分可用于在异步社区兑换优惠券、样书或奖品。

我们的联系邮箱是contact@epubit.com.cn。

如果您对本书有任何疑问或建议,请您发邮件给我们,并请在邮件标题中注明本书书名,以便我们更高效地做出反馈。

如果您有兴趣出版图书、录制教学视频,或者参与图书翻译、技术审校等工作,可以发邮件给我们;有意出版图书的作者也可以到异步社区在线提交投稿(直接访问www.epubit.com/selfpublish/submission即可)。

如果您所在的学校、培训机构或企业,想批量购买本书或异步社区出版的其他图书,也可以发邮件给我们。

如果您在网上发现有针对异步社区出品图书的各种形式的盗版行为,包括对图书全部或部分内容的非授权传播,请您将怀疑有侵权行为的链接发邮件给我们。您的这一举动是对作者权益的保护,也是我们持续为您提供有价值的内容的动力之源。

“异步社区”是人民邮电出版社旗下IT专业图书社区,致力于出版精品IT图书和相关学习产品,为作译者提供优质出版服务。异步社区创办于2015年8月,提供大量精品IT图书和电子书,以及高品质技术文章和视频课程。更多详情请访问异步社区官网https://www.epubit.com。

“异步图书”是由异步社区编辑团队策划出版的精品IT专业图书的品牌,依托于人民邮电出版社近40年的计算机图书出版积累和专业编辑团队,相关图书在封面上印有异步图书的LOGO。异步图书的出版领域包括软件开发、大数据、人工智能、测试、前端、网络技术等。

异步社区

微信服务号


Power Platform是什么?也许目前很多人对它还不太了解。但是,谈到Power Platform的一位成员——Power BI,相信大多数读者对它已经比较熟悉。图1.1所示为微软公司官方的Power Platform架构图。Power Platform内含4个Power应用和3个通用组件。

图1.1 微软公司官方的Power Platform架构图

1.Power应用

(1)Power BI:通过可视化分析让读者可以洞察数据蕴含的价值。Power BI既可以用于自助商业智能分析,也可与Azure数据库、数据湖相结合,实现企业级的商业智能应用。

(2)Power Apps:可用于替换Excel表格、纸质表单等传统方案,快速地以无代码或低代码的方式来开发应用程序;可与AI Builder、Dataverse相结合,实现丰富的应用场景。

(3)Power Automate:可用于一般工作流自动化场景、RPA(Robotic Process Automation,机器人流程自动化)应用。Power Automate原名Flow,加入RPA场景后于2019年10月正式更名为Power Automate。

(4)Power Virtual Agents:支持用户无代码创建智能聊天机器人,同时可与Power Automate深度集成,丰富应用场景。

2.通用组件

(1)Dataverse:基于标准化数据模型的数据服务应用。简单而言,Dataverse是一个带有SaaS(Software as a Service,软件即服务)性质的线上数据库,支持用户通过自助式方式创建与定义数据库以及相应的数据服务规则。注意,Dataverse原有名称为Common Data Service(CDS),于2020年11月正式更名,但由于官网图片仍使用旧术语,本书中部分截图可能仍然使用旧术语。

(2)Data Connector:用于实现Power Platform与外部数据的数据连接,在写作本书时,Data Connector提供的标准接口达270多种,从微软公司的产品如SharePoint、SQL Server等,到社交媒体如Facebook、Twitter等应用,应有尽有。开发者可通过API(Application Programming Interface,应用程序编辑接口)开发任何定制化接口,如与微信、微博等定制化接口。

(3)AI Builder:可提供文本分类、表格处理、物体检测、预测等AI(Artificial Intelligence,人工智能)模型以及一系列标准即开即用AI功能,无须提供AI指示,用户也能自助式落地AI解决方案。

我们首先得从数字化转型这个话题聊起,目前人类社会已经处于数字化时代,即DT(Digital Technology,数字技术)时代,这意味着过去IT(Information Technology,信息技术)时代的生产工作方式与行为模式都将发生变革,而变革的引擎主要来自数字技术的发展。这并不是空泛的理论,而是切切实实涉及具体的商业场景细节。例如,日常录入数据的方式是通过纸质还是电子表格?数据的转化的过程是手动还是AI化?数据分析的能力仅限于传统Excel分析工具还是更为专业的Power BI?如果人们在现实工作中仍然被传统的技术与思维所束缚,那数字化转型只能永远是一个美好的愿望。Power Platform正是为解决数字化转型而生的一个整体性的解决方案平台。在Power Platform环境下,所有用户均可通过低代码或无代码方式落地各种数字化商业场景,并将结果充分与其他同事分享,形成规模效应,同时极大地提升用户体验。

数字化转型成功的关键因素有哪些呢?至少低代码是一个关键因素,因为它能有效降低学习成本。举例而言,现实中企业不可能要求所有业务人员个个精通如Python、R等数据分析工具,这些连IT人员都未必全部能掌握的工具,何况是业务人员呢?这样的人如果存在,一定凤毛麟角,而且拥有这种能力的人一般不会甘于一个普通的业务岗位,企业也很难将这种能力有效规模化。尤其对于非IT企业,精通IT技能并非也不应该是企业的核心价值所在。能否提升企业人员的数字化技能是数字化转型能否成功的核心因素。图1.2所示为高德纳(Gartner)公司低代码平台魔力象限图,Power Platform作为微软公司力推的低代码平台在业界广受好评,在同行业中处于领导者地位。

图1.2 高德纳公司低代码平台魔力象限图

何谓低代码?其本质是一种类似“乐高积木”的产物,Power Platform将各式各样通用功能封装成各类型积木,形成模块化组件。用户通过自助“拼积木”的方式,创建属于团队或个人的“乐高城堡”,这就是低代码的商业价值。业务人员无须学习编程语言就能实现设计网页端应用、自动化、大数据分析这样传统IT人员才能完成的任务。相信用过Power BI的读者对低代码工作方式有更加深刻的理解,从“Excel世界”转换到“Power BI世界”,原来复杂的Excel公式或者是VBA被相对简易的M、DAX语言替代了,同时还支持可视化交互等新功能。低代码应用能解决企业数字化转型过程中实际业务流程难以落地的难题(见图1.3)。

图1.3 Excel、PPT风格的操作体验

尽管Power BI是一款非常强大的数据可视化分析工具,但所谓“孤掌难鸣”,仅仅靠单一的数据化分析工具并不足以支撑企业数字化的全面转型。因此,继Power BI之后又出现了Power Apps、Power Automate等应用,这些应用和Office“兄弟”应用(见图1.4)相互协作、相得益彰,形成了强大的生态系统。

图1.4 Office 365应用列表

除了Microsoft 365(原名Office 365)云,Power Platform还与另外“两朵云”(Azure和Dynamics 365)深度集成,形成了全方位的数字化生态系统。从这个战略高度而言,微软公司的数字化应用是以Azure、Dynamics 365、Microsoft 365这3朵云与Power Platform的深度结合的云生态系统。

在谈到Power Platform对传统IT的挑战这个话题前,我们首先要谈到一个人:查尔斯·拉曼纳。此君自毕业十年后,在2019年被称为至今为止微软公司最年轻的VCP(Vice Corporate President,全球副总裁)。在如此年纪荣登如此重要的位置,其中很重要的原因归于查尔斯在领导Power Platform平台开发方面的卓越贡献,令Power Platform成为一支强而有力的新力量,号称微软公司的“第四架马车”。

微软公司对Power Platform的定位是全民开发平台,即无论是否拥有IT技能,用户均能在Power Platform上开发应用场景,同时Power Platform能为SaaS云托管服务。因此,许多传统上需要IT人员管理的工作如基础架构管理都将受到冲击。既然如此,那么传统的IT人员的价值何在?笔者认为,在低代码环境下,IT人员仍有自己的舞台角色:

(1)Power Platform平台的管理人员;

(2)Power Platform应用培训人员;

(3)Power Platform高级开发者。

Power Platform虽然是低代码平台,但学习成本仍然是存在的,IT人员充当的是“传道解惑”的角色。当业务人员通过自助方式实施个人或小组级别的数字化方案,IT人员则会聚焦在复杂的企业解决方案领域,如Power Platform与Azure平台的深度集成开发。当然,自助与企业的划分界限也并非总是泾渭分明的,部分企业会定位C.O.E(Center of Excellence,卓越中心)角色作为衔接IT与业务之间的“桥梁”。作为IT人员或C.O.E人员,对Power Platform的技术把握程度应比业务人员更为深入,这样才能更好地支持和引领业务的数字化发展。

从技术角度而言,Power Platform与Python、R语言既是竞争关系又是互补关系。对于Python、R语言,目前没有相关的低代码工具,因此在全民数字化转型领域,Power Platform凭借微软公司的生态环境,有不可忽视的优势。而Python、R语言在复杂的专业领域更有优势,至于“全民Python和R”,从今日的技术层面而言,还不具备实现的可能。幸运的是,Power Platform支持嵌入Python、R语言的开发代码,二者可以结合使用,集成“威力”更为惊人。笔者通过如图1.5所示的Excel、Power Platform及Python、R语言的学习难度与普及人数对比进行说明。对于大多数非IT专业背景的人,先达到“中学水平”,是更加切实可行的目标。即使已经是“大学水平”的读者,重新回顾“中学课本”,也必会有所收获。

图1.5 Excel、Power Platform及Python、R语言的学习难度与普及人数对比

Power BI是一款数据可视化分析解决方案,如果觉得数据可视化分析概念太抽象,可以将Power BI理解为加强版的Excel(尽管这种理解有些许偏差)。笔者对微软公司官网的Power BI简介(见图1.6)简单总结为:连接各种数据源,创建令人惊叹的交互式可视化分析;发布报表和仪表板,与团队协作和共享见解;无缝获取见解或者随时随地进行无缝访问。

图1.6 来自微软公司官网的Power BI简介

读者可能会问:但即使这样,何以见得此为Power BI的高明之处呢?其他BI工具(如Tableau)也可以达到这种效果啊!的确没有错,能实现这些功能的产品不止一家,但俗话说,“人比人得死,货比货得扔”。图1.7所示为高德纳公司2021年的BI平台魔力象限图,可见微软公司在领导者象限遥遥领先对手,且微软公司已经在过去多年连续处于领导者地位。此图的横轴为前瞻性维度,可理解为“远景的丰富程度”;纵轴为可执行能力维度,即目前产品功能与用户体验是否值得肯定的体现。虽然,魔力象限图是对微软品牌的总体打分,但Power BI作为微软公司目前最核心的可视化数据分析工具之一,足以代表微软公司整体在BI平台方面的最高制作水准。

图1.7 高德纳公司2021年的BI平台魔力象限图

1.自助式分析与企业级分析

除了上述的可执行能力与前瞻性两个维度的价值,笔者认为Power BI身上还具有这些特点:操作敏捷自助,可视化功能丰富,适用于个人/部门/企业各层次。今天,传统的固定化BI报表已不能满足现代快速变化的商业需求,决策者应该思考是否需要将由IT人员主导的特定分析转为由分析人员主导的探索性分析。而Power BI恰恰可以赋能分析人员在无须IT人员介入的情况下独立完成一系列的数据挖掘操作,让“人人都能学会数据分析”不再是一句空洞的口号。如果把一家企业的BI分析工具比喻成武器,那么传统的企业级BI工具的特点是精准、射程远、威力大,但需要专业人员操作,自身维护成本高;自助式BI工具的特点是易上手,普通人通过短期培训就能发挥出很大“威力”(见图1.8)。

图1.8 企业级BI与自助式BI的对比

这并不是说企业级BI工具不再重要了,对许多数据规模大、逻辑复杂的应用场景来说,仍然需要用企业级BI工具完成。因此,企业级BI工具目前仍然处于不可缺失的地位。企业应思考的不是二选一的问题,而是如何将传统的企业级BI工具和现代的自助式BI工具有机结合,发挥出最大的“威力”。例如,企业级BI工具在后方数据仓库搭建更有优势,专业IT人员可专注于数据仓库开发、数据治理等工作;分析人员则通过自助式BI连接后方数据仓库实现探索性分析,最大限度地释放生产力,从而事半功倍。图1.9所示为Azure Data Services架构图,是基于企业级应用平台Azure和各数据平台搭建的商业智能解决方案,Power BI在其中发挥可视化呈现的功能。Power BI既可用作自助式BI方案,也可以用作企业级BI方案。

图1.9 Azure Data Services架构图

2.Power BI与Excel

有读者问,我用了这么多年的Excel难道不是一个自助式BI吗?我为什么还需要使用Power BI呢?虽然有争论,但Excel的确符合BI工具的许多特性。如果从这个角度理解,目前Excel的确仍然是市面上使用最广泛的“BI工具”。有这样一个笑话说明Excel的广泛用途。

  问:BI工具中使用频率第三高的按键是什么?

  答:导出为Excel。

  问:那么第一与第二高的呢?

  答:“Yes”和“No”。

那么,我们不妨对比Power BI与Excel这两款工具的差别。前文说Power BI是Excel加强版,那么它强在哪里呢?首先,Power BI解决了Excel传统的三大难题,如表1.1所示。

表1.1 传统Excel与Power BI主要功能对比

传统Excel挑战

Power BI解决之道

无法超越104万行数据限制以及随着文件大小增大,缓慢的数据处理速度,甚至出现文件卡死

利用列存储技术,大大压缩文件大小,压缩比可达1∶10,行数限制完全取决于内存的支持上限

为实现透视表分析,通过VLOOKUP公式,在事实表中添加LOOKUP列,不但公式维护成本高,且会产生冗余数据,影响性能

通过建立表与表间的连接,轻松实现LOOKUP表查询,不会产生冗余宽表

通过VLOOKUP公式,建立大而宽的表,会产生冗余数据和用到难以想象的复杂调用函数

通过DAX,实现一次编写、多次调用,避免冗余公式。DAX支持公式嵌套组合,可实现复杂逻辑计算

除此之外,Power BI比Excel更加完善的地方还有许多,以下只列举一些重要特性:

(1)Power BI增添了Power BI service分享发布功能,使内容发布与分享更为便利;

(2)Power BI添加了丰富而强悍的可视化组件,使人们更容易理解和洞察数据背后的规律;

(3)Power BI增加了AI高级分析功能,可帮助分析人员洞察数据;

(4)Power BI可与Office 365、Azure和Dynamic 365无缝对接,形成了强大、协同的生态体系。

既然Power BI如此强大,是否日后能直接用Power BI替代Excel呢?答案是否定的。我们来看Power BI不能做什么:

(1)Power BI不是编程工具,不能完成类似Excel VBA的复杂逻辑编写;

(2)Power BI不能处理非结构性数据;

(3)Power BI不能用于OLTP(Online Transaction Processing,联机事务处理);

(4)Power BI本身只是分析数据的工具,通常不用于回写数据。

基于这几点,Excel的优势就显现出来了。实际上,自Excel 2010开始,Excel已经支持Power Pivot、Power Query功能。我们姑且将Excel Power Pivot与Excel Power Query统称为Power Excel,这要与传统的Excel进行区分。如今的Excel使用者除了需要熟悉VLOOKUP和VBA这类传统Excel技能,也应该对模型方面的知识有所掌握,这样才是一个真正的Excel分析高手。图1.10所示为基于Power Query进行股票回归测试的Power Excel,使用的技术是VBA、Power Pivot与Power Query的集成。

图1.10 基于Power Query进行股票回归测试的Power Excel

Power BI与Power Excel在技术上是相通的,同宗同源,如图1.11所示,都有获取数据和分析数据模块。对比而言,Power BI更适合用于可视化分析方案,而Power Excel更适用于事务型与表格型的混合解决方案。

图1.11 Power BI与Power Excel数据模块的对比

Power BI的核心功能有四大模块:数据准备、数据建模、数据可视化、数据发布与共享。图1.12所示为关于Power BI组件的比喻,一个成功的可视化数据分析过程可以比喻为一次愉快的外出用餐体验。为提供愉快的用餐体验,餐馆务必在选备食材、烹饪与卖相、环境与服务上下足工夫。在Power BI语境下,数据准备代表食材购买与准备,数据建模代表烹饪色香味俱全的食物,数据可视化代表菜品卖相,Power BI service代表餐厅平台(环境与服务)。

图1.12 关于Power BI组件的比喻

1.数据准备(数据清洗)

有一句老话“Garbage in,garbage out”(垃圾进,垃圾出),用于强调数据准备的重要性。根据《哈佛商业评论》的调查研究,数据准备要花掉整个分析过程中80%的时间。因此一个工具是否能胜任数据准备的挑战,其关键性不言而喻。在Power BI中,仅使用Power Query就可以完成许多基础的数据准备任务。同时,资深用户还可以直接使用高级功能,通过编写M语言代码来完成更为复杂的数据准备任务,前提是用户需了解M语言知识(见图1.13)。

图1.13 Power Query主界面

2.数据建模

建模部分可谓是Power BI的灵魂核心。DAX(Data Analysis Expression)是数据分析工具的核心语言,通过DAX,Power BI可实现丰富的分析场景,甚至在Excel或SQL中也未必能表达出的逻辑,用DAX则能举重若轻地完成。与许多人一样,笔者被DAX的简练、高深、优雅所深深折服。DAX表达式中一部分与Excel公式重合,如SUM、IF、TRIM等,通常这部分表达式用于计算列。另外如CALCULATE、ALLSELECTED、ALL等DAX独有表达式,通常用于度量、计算(见图1.14)。

图1.14 Power BI关系视图界面

3.数据可视化

除了Power BI可视化区中默认自带的30种可视化图形,Power BI可视化库至少还有200多种可视化图形供用户选择。当然,这并不是说用户需要了解每种图形的用法,实际上许多图形之间是相似的。用户能掌握30种主要图形足矣。另外,部分Power BI可视化图形支持高级分析功能,但用户需要为使用额外功能支付额外许可费用(见图1.15)。

图1.15 Power BI可视化界面

4.数据发布与共享

当制作报表完成后,我们可将报表发布至Power BI service中并与其他使用者共享分析结果。实际上,Power BI service本身与数据分析没有太多直接关系,它只作为报表发布与共享的服务平台,其终极目的是为用户提供良好的环境,包括在线报表的访问速度、完善的分享功能、安全的访问、友好的用户界面等,从而提升用户体验,这些功能往往非常关键。试想即使前面所有步骤都做到完美,但对于刷新一次需要5小时、查询一次需要10分钟的报表,谁会享受这样的报表服务呢?(见图1.16)

图1.16 Power BI service主界面

Power Apps是一款根据业务需求定制应用的低代码工具。图1.17所示为Power Apps官方功能介绍,企业中几乎任何人都可以通过预建模板、建议的拖放操作构建和启用应用。Power Apps支持嵌入AI Builder等高级应用,也可与Azure Functions集成,赋予开发人员更多扩展能力。

图1.17 Power Apps官方功能介绍

为什么需要Power Apps呢?在传统IT行业中,存在这样一个循环困境,新的商业机会往往需要新应用的支持,而市场中的标准应用又往往难以满足商业需求,于是寻求定制开发应用,但随之又要面临开发成本的上升与项目过程的拖延问题,最终好不容易完成交付应用,又发现原有商业需求发生变化,二次开发应用的成本过高,日常也难以维护。于是经过2~3年,又决定推翻已有应用,重新开始下一轮的循环。这就是传统应用开发中常见的挑战,开发的目的是让应用适用于人,但开发完成后的结果,往往是让人适应应用,这个过程影响的是用户的体验感和使用效率。Power Apps的商业价值在于打破这种循环困境,通过低代码的方式,用户可以自助、快速构建定制化的、灵活轻便的应用,并可应需求迭代增强应用的功能,极大地延长了应用的生命周期。

顾问公司Forrester发布的Power Apps推动业务转型的调研结果(2020年3月)表明,这些改变得益于业务人员由原来被动接受应用开发,转为主动自助应用开发。

1.Power Apps类型

如图1.18所示,Power Apps可提供画布应用、模型驱动应用和门户3种App,满足大多数商业场景的需求。它们的特征如下。

图1.18 Power Apps提供的3种App

(1)画布应用:用户可在画布般的界面上设计每个具体的细节,添加各种输入控件,如文本输入、相机拍摄、图片上传、邮件搜索等,这都是为了收集信息数据。该应用提供一些常用的场景如费用报告或现场检查。图1.19所示为画布应用示例。

图1.19 画布应用示例

(2)模型驱动应用:用于数据模型和业务流程中的应用管理,以拖曳的方式设计商业规则,并根据特定角色定制用户体验。图1.20所示为模型驱动应用示例。

图1.20 模型驱动应用示例

(3)门户:用于创建门户网站,并支持通用身份验证,例如Azure AD、LinkedIn、Microsoft账户、Okta等,门户示例如图1.21所示。

图1.21 门户示例

2.Power Apps函数

总体而言,Power Apps函数分为两大类:Excel类与非Excel类。顾名思义,Excel类函数与Excel中的函数高度一致,例如Sum、If、Trim等,对Excel用户来说门槛低。Power Apps函数示例如图1.22所示。

图1.22 Power Apps函数示例

非Excel类函数包括如Filter、AddColumns、ThisItem、ClearCollection等函数。图1.23所示为类似于Power BI DAX分析函数示例——Filter公式的用法介绍,熟悉DAX的读者不难发现该公式与DAX中的Filter用法完全一致。因此,如果读者已经掌握了Excel与DAX函数,那么也就掌握了Power Apps中大部分函数的用法。当然,仍有一部分公式是独立存在于Power Apps中的,例如,ThisItem、ClearCollection等,后文会对重要公式进行详解。

图1.23 类似于Power BI DAX分析函数示例

Power Automate原名Flow,可实现应用之间数据自动化的任务,从而减少手工的重复性工作。在2019年它加入了桌面流功能,用于实现RPA功能,于是更名为Power Automate。Power Automate可实现商业应用之间数据自动化传输(见图1.24)。例如,将Outlook邮箱中邮件附件传输到SharePoint中;或者当SharePoint项目中新增内容时,触发邮件通知等。迄今为止,Power Automate支持的数据应用接口就达270多种。除此之外,Power Automate支持调用市面上的任何公开API,用户完成以上操作的过程就像使用Excel一样方便。

图1.24 Power Automate搭起应用之间的桥梁

Power Automate的商业价值在于其支持自助式设置应用之间的数据连接,而在这之前,应用之间的数据连接往往需企业级中间件工具完成。但对于轻量级应用如Office而言,企业级中间件工具成本过高也不够灵活,Power Automate能很好地填补这一空缺,通过自助式设置完成自动化工作,从而减少不必要的开发成本与时间消耗。那么Power Automate是否适用于企业级的数据自动化任务呢?对于企业级应用,微软公司推荐使用Azure Logic Apps,一个数据处理能力更强的应用。而实际上Power Automate是Azure Logics Apps的轻量级衍生应用。熟练掌握Power Automate意味着掌握了Azure Logics Apps的基础知识。

图1.25所示为顾问公司Forrester发布的Power Automate推动业务转型的调研结果(2019年10月)。微软公司对Power Automate产品价值的定位:Power Automate可以使企业工作效率更高,更具有自动化特性。目前,Power Automate主要有以下4个应用价值:

(1)自动化数据在应用系统之间的传输过程;

(2)为用户提供流程中不同环节的交互功能;

(3)通过API连接外部形形色色的数据源;

(4)实现桌面或者网页上的RPA功能。

图1.25 顾问公司Forrester发布的Power Automate推动业务转型的调研结果(2019年10月)

1.流分类

有别于Power家族的另外两名成员,Power Automate没有用户界面(User Interface,UI),它是“隐藏”在后端的自动化选手,例如,可以自动化Outlook发送邮件、自动化刷新Power BI数据集,因此Power Automate是一只看不见的、在幕后运作的“手”。Power Automate流可以分为三大类。

(1)云端流:由事件触发的一系列动作的流。事件指通过如手动、时间、更新等触发的信号。图1.26所示为手动触发的云端流示例。

图1.26 手动触发的云端流示例

(2)业务流程流:在使用Power Apps和Dataverse方案中,可使用Power Automate自动化业务流程流的用户体验。

图1.27所示为业务流程流设计示例,其中显示了流程中的3个阶段,而每个阶段中有若干个步骤。

图1.27 业务流程流设计示例

(3)桌面:分为桌面应用与Web应用两大类别,通过无代码“录屏”的形式,记录的操作步骤,可转化为RPA,图1.28所示为桌面流界面示例。

图1.28 桌面流界面示例

值得一提的是,Power Automate提供了丰富的模板,例如Forms与Power BI的衔接模板、SharePoint与Outlook的衔接模板。用户可以通过关键词,搜索相关的模板,如图1.29所示。

图1.29 Power Automate模板

2.表达式

大部分情况下,Power Automate的设计是通过对元素的拖曳完成的,图1.30所示为Power Automate中的流编辑界面,过程有点类似搭建乐高积木。流编辑几乎可以通过无代码完成,只是在某些稍微复杂的逻辑判断中需要少量的代码,但比Power BI、Power Apps表达式简单得多。

图1.30 Power Automate中的流编辑界面

Power Virtual Agents(简称PVA)是一款基于Power Platform云平台无代码的智能聊天机器人应用。无须具备AI知识与编程的基础,用户可自助式完成PVA的创建。PVA也是Power家族成员中最年轻的一位,直到2019年12月才公开面世。

PVA能为商业带来3个主要方面的价值。

(1)提升个人数字能力:无须依靠AI知识、经验与IT人员协助,企业中每位员工都可以自助式创建团队级别以及个人级别智能聊天机器人。

(2)降低成本:PVA可满足简单、常用的咨询服务需求,从而减少人工服务在时间上的浪费,让人工服务集中于更为复杂的咨询业务。

(3)提升用户体验:PVA是跨越时间与地域的SaaS云服务应用,要确保能全天候为客户提供标准化以及个性化服务。

PVA是Power Platform应用之一,与其他Power“兄弟”应用可实现无缝集成。举例而言,当对话服务中出现难以处理的复杂问题,PVA可通过Power Automate中的工作流(Workflow)服务自动创建工单,请求人工介入。如果工单系统不支持工作流怎么办呢?不用担心,PVA还可以调用桌面流,自动将信息录入第三方工单系统,图1.31所示为PVA助力TRUGREEN公司业务。

图1.31 PVA助力TRUGREEN公司业务

图1.32所示为顾问公司Forrester发布的机器人可提高组织工作效率的调研结果(2020年6月),调研内容为机器人与Microsoft Teams集成可带来的变化潜力。

图1.32 顾问公司Forrester发布的机器人可提高企业工作效率的调研结果(2020年6月)

在PVA中,我们可以创建智能聊天机器人(简称机器人),一个机器人下可创建数个话题,图1.33所示为一个机器人对应多个话题。话题实际上是对话内容的逻辑定义设置,如商店的营业时间、商店售卖的产品种类、商品的售后政策等。同时,PVA对自然语言有一定的理解能力。例如,话题中只定义了Store Hours为09:00~21:00,但咨询用语输入为Open hour时,PVA可以“理解”Open hour指的就是09:00。

图1.33 一个机器人对应多个话题

机器人可以被部署到不同的渠道中,如网站、Teams、社交平台等(见图1.34)。

图1.34 PVA支持多种发布渠道

如图1.35所示为PVA中的对话设计界面。无论是简单还是复杂的逻辑,都可以在PVA中通过设置相应的节点(Nodes)与动作(Actions)加以实现。

图1.35 PVA中的对话设计界面

虽然PVA定位为无代码应用,但开发者仍然可通过Azure扩展PVA的能力(见图1.36)。

图1.36 PVA支持使用Azure扩展开发

Dataverse、Data Connector和AI Builder为Power Platform三大通用组件,为Power家族提供额外功能支持,所以它们总与Power家族成员一起被使用。

1.Dataverse简介

Dataverse是基于云的SaaS的数据库服务,能为用户提供标准的数据实体定义、安全的权限控制、灵活的业务逻辑构建、丰富的数据接口以及可扩展的数据容量,为Power Platform提供强大的数据支持。可以简单认为Dataverse是在云端的高级SQL服务应用,但其功能又不仅限于SQL功能,图1.37所示为Dataverse(Common Data Service)功能的总览,可让我们了解Dataverse的一些特色。

(1)安全(Security)。Dataverse可通过安全认证机制Azure Active Directory(AAD,Azure活动目录)提供多因子认证(MFA)功能,并且可实现行级权限设置与丰富的数据审计。

(2)商业逻辑(Logic)。Dataverse可提供数据级别的业务逻辑处理机制。

(3)数据(Data)。Dataverse可提供对数据的查找、建模、验证和报告功能。

(4)存储(Storage)。Dataverse的数据存储在Azure云端。数据的存储路径与存储空间都由微软云管理,可节省用户的管理精力。

(5)集成(Integration)。Dataverse支持多种数据API与各种应用集成。

图1.37 Dataverse(Common Data Service)功能的总览

2.Dataverse的基础功能

参照图1.37,我们来了解Dataverse的一些基础功能。

(1)表格(Tables)。表格可以理解为数据集中的表格,用于存储具体的数据记录。Dataverse有许多预定义的表格(如Account),用户也可根据需要创建定制化表格。注意,该术语旧称实体(Entities)。

(2)列(Columns)。列为表格中的字段。预定义的表格中,已定义了若干列,可供用户直接使用;当然用户也可通过“添加列”构建新的列。注意,该术语旧称字段(Fields)。

(3)关系(Relationships)。关系指表与表之间的业务逻辑。以Account为例,一个Account可记录对应多个Donation记录,用户也可自行定义新实体之间的关系。

(4)业务规则(Business rules)。业务规则是指将商业逻辑应用到实体中的数据层级中,从而更加有效地控制数据的机制。举个例子,业务中的检验错误、计算字段值、依据条件激活审批等场景均可在Dataverse的数据层完成,而无须借助于应用层实现。

(5)窗体(Forms)。窗体是指更新实体数据的表单,可修改默认表单并在数据栏“添加数据功能”中使用表单布局。

(6)视图(Views)。视图是指陈列实体相关的所有数据视图,用户既可使用默认视图,也可通过“添加视图”功能创建定制化视图。

(7)数据(Data)。用户可在数据栏下查看当前实体中的数据,可添加数据记录,以及选用不同的视图选项。

1.Data Connector简介

Data Connector是Power Platform与外部环境数据接口相连的连接器,通过Data Connector提供的接口,Power家族成员可与外部数据源相连。图1.38所示为目前支持的接口,包括大多数Office应用与大量第三方的应用接口。

图1.38 目前支持的接口

图1.39所示为由微软公司提供的高级数据接口,这些数据接口下方有“PREMIUM”的标识,这里大部分是连接商业应用的接口,如SQL Server、Dynamics 365等。如前所述,要使用这部分的接口需要额外的许可。

上述的数据接口的数量仍然在不断增长中,同时,用户可以开发定制化数据接口。国内像微博、微信、抖音这类社交应用,理论上只要有API许可,就可开发定制化数据接口与Power Platform相连。

图1.39 高级数据接口

2.Data Connector基础功能

当使用Power BI的“获取数据”功能时,我们可以观察到各种类型的接口,如图1.40所示。

图1.40 Power BI获取数据界面

但是实际上这里只涉及Data Connector的一小部分功能而已,Power BI中接口功能为只读,而在Power Automate中,Data Connector有更加广泛的使用场景。例如,Data Connector支持监测SharePoint列表的新项目创建、发送电子邮件、监测审批结果、更新SharePoint列表,这些功能的底层都是通过数据接口实现的,如图1.41所示。这些数据接口都被封装成IDE(Integrated Development Environment,集成开发环境)模块,用户只需要通过拖曳就可轻松完成数据的调用,而无须编写代码。

图1.41 Power Automate设计界面下的数据接口

1.AI Builder简介

过去,AI只是属于少数企业中的高端领域能力。如今,AI应用能力正作为一种普遍能力被广泛应用在日常的商业场景中。一个企业的AI应用能力,也被视作数字化能力中的重要一环。但是,并不是每个企业都像阿里巴巴集团、百度公司那样有专业的技术团队和足够的研发资金投入AI应用能力的构建,而Power Platform中的AI Builder功能,能为企业提供的普遍AI应用能力。企业中的任何人都可以在没有AI基础知识的情况下,通过无代码的方式训练AI模型,并将训练完成的模型发布与应用在Power BI、Power Apps中。图1.42所示为目前AI Builder版本支持的模型。

在图1.42中,上方的实体提取、物体检测、类别分类、表格处理与预测皆属于需要训练的定制化模型,用户需要提供数据供模型“学习”,评估学习结果,最后部署使用。下方的“直接提高工作效率”则属于“训练”完成开箱即用的AI模型,不支持学习,用户可直接使用。

图1.42 目前AI Builder版本支持的模型

2.AI Builder基础功能

以下是关于定制化AI模型的功能分类。

(1)表格处理。从图片中的表格里提取、整理和保存指定的关键文字,如图1.43所示。

图1.43 表格处理示例

(2)物体检测。从上传图片中识别物体的名称与数量,如图1.44所示。

图1.44 物体检测示例

(3)预测。根据历史数据预测事件在未来的发生结果,如图1.45所示。

图1.45 预测示例

(4)类别分类。根据文本内容的类别进行分类,从文档中提取见解,如图1.46所示。

(5)实体提取。依据业务分析的需求,确认数据中的重要内容,如图1.47所示。

图1.46 类别分类示例

图1.47 实体提取示例

高级模型可提供情感分析、语言识别、名片扫描等功能,如字面意思,通俗易懂,不另赘述。值得一提的是,每一次AI分析应用,都是通过模型中的数据与云算力完成的,消耗的是Azure云计算资源,需要额外付费购买。凡带有钻石标志的都属于高级模型范畴,如图1.48所示。

图1.48 高级模型为额外收费服务

Power Platform支持用户创建独立的数据库空间环境,每个环境中的存储、数据、数据流、连接、网关、应用、安全设置都依存于该环境。图1.49所示为Power Platform的环境切换示例。注意,免费账户的环境有试用期。用户可以根据不同的目的设置不同的环境,例如,根据应用开发的需求,设置开发、测试与生产环境,或者根据业务地理位置的划分,设置亚洲环境、欧洲环境。

图1.49 Power Platform的环境切换示例

Power Platform admin center门户可为管理人员提供丰富的Power Platform管理选项。单击如图1.50所示的左图Power Apps界面下的“管理中心”,进入管理门户,如图1.50所示的右图。门户管理包括以下几个重要设置。

(1)环境(Environments):查看与管理环境设置。

(2)分析(Analytics):查看Power Platform服务应用的使用人数、API调用次数等。

(3)资源(Resources):查看容量、Dynamics 365 Apps与门户的状态。

(4)技术与支持(Help+support):技术支持提交与查询门户。

(5)数据集成(Data integration):创建或添加预先设置的数据接口。

(6)数据网关(Data gateways):数据网关设置。

(7)数据策略(Data policies):设置不同数据接口与Dataverse之间的权限。例如,关闭Facebook接口与Dataverse连接。

(8)管理中心(Admin centers):跳转至Power BI、Power Apps与Power Automate的管理门户。

图1.50 Power Platform管理中心


相关图书

Python数据科学实战
Python数据科学实战
数据分析实战:方法、工具与可视化
数据分析实战:方法、工具与可视化
Power BI数据挖掘与可视化分析
Power BI数据挖掘与可视化分析
从0到1——Python数据可视化
从0到1——Python数据可视化
善用图表——一看就懂的商业数据表达术
善用图表——一看就懂的商业数据表达术
基于Python的金融分析与风险管理(第2版)
基于Python的金融分析与风险管理(第2版)

相关文章

相关课程