小目标 | DAX高级实践-Power BI与Excel联合应用
· 适用人群:数据分析专业人士,在数据分析方向需求发展人士
· 应用场景:数据汇报、数据可视化展现、数据建模分析
· 掌握难度:★★★★☆
本期讲师
DAX高级实践-Power BI与Excel联合应用
通过前序三篇文章的学习,大家已经了解到在DAX数据建模中如何搭建数据模型、如何设计数据模型中对于值的度量计算以及如何查询数据模型。
而在实际应用中,Excel仍然是数据分析的世界标准,它的用户群体最为广大,而其中的数据透视表更是Excel中最强大的应用(没有之一)。
那么Power BI 与Excel联合起来会擦出什么样的火花呢?
运行在背后的引擎
前面已经知道负责运行DAX的引擎实际和微软SQL Server 分析服务(SSAS)是一样的,在本地运行PowerBI Desktop的时候,PowerBI Desktop会建立一个SSAS本地进程,使用任务管理器(可以点击Ctrl+Alt+Delete启动任务管理器)便可以看到:
虽然在计算机上并未安装微软旗舰级数据库系列产品SQL Server Analysis Services,但PowerBI Desktop却在使用同样的引擎。
这再次说明Power BI Desktop的强大性完全基于微软旗舰级数据库产品核心引擎,数据分析师表面上在使用PowerBI Desktop在建立模型,而实际上完全在使用SSAS平台建立数据模型,这是数据分析师应该选择PowerBI Desktop的本质原因,它不仅仅是一个客户端工具,它就是一架数据分析服务器。
实现OLAP服务器
既然明白了Power BI Desktop就是SSAS服务器,也就有了一项非常巧妙灵活的应用模式:
✔ 用PowerBI Desktop作为本机商务智能服务器;
✔ 用Excel作为报表终端来完成。
实现端到端(end-to-end)的敏捷商务智能实施方案。数据分析师先在Power BI Desktop里做DAX数据建模设计,设置好度量值以及要分析的结果,最终在Excel中呈现分析结果并形成报告,利用Excel的通用性可以自由分发给指定的用户(一般为更高级的决策者)。
这其实可以说是一种“回归”,因为在Excel设计之初时就作为一种终端OLAP(Onlineanalytical processing)联机分析处理工具的,如下所示:
当然如果用Power BI Desktop作为本地BI服务器,则可以这样:
只需要输入本机服务器地址即可。那如何知道本机服务器地址呢?可以使用之前介绍过的DAX Studio来查询到这个信息。打开DAXStudio后连接到PowerBI Desktop,便可以在任务栏看到:
这个就是要找的地址,然后输入到Excel中即可,如下所示:
点击下一步直到完成,并选择用透视表的方式来进行连接,如下所示:
可以惊喜地看到所有在Power BI Desktop中设定的列和度量值都呈现了出来。
理解OLAP立方体
这个过程是将Power BIDesktop中的表结构模型映射成了OLAP结构的立方体模型,如下所示:
OLAP立方体(OLAP Cube)设计模式是商务智能发展过程中的经典模式,可以简单理解为不同维度的数据可以从多个维度组成一个数据立方体,而度量就是从多个维度综合计算的结果。如下所示:
从这个意义上说,提供表格式的数据模型相当于提供了OLAP数据立方体,数据立方体这个概念更加直观。PowerBI Desktop实际可以作为OLAP服务器使用,而用Excel在终端制作透视表的应用。这样也就完美地结合了PowerBI Desktop以及Excel。
OLAP和Excel本来就是密不可分的数据分析应用,这并非新技术,正相反这是Excel数据分析的真正经典应用。
在Excel中用OLAP工具打造自由报表
很多用户还根本没有用过OLAP这项藏匿于Excel的强大功能,那现在就来看看它能做什么。我们以编制一个年度销售业务趋势为例看到:
熟悉透视表的使用会知道,透视表是一个整体,往往无法单独取出里面的数据,而在制作报告的时候,希望更加自由地使用每个单元格的数据。
这里就可以使用Excel透视表的OLAP工具功能,如下所示:
注意,如果是在单纯Excel文件透视表里,该功能是灰色禁用状态的,正是因为此时连接了Power BI Desktop作为本机OLAP服务器,才能进一步使用该项强大功能。如下所示:
可以看到:
✔ 透视表全部转化为单元格;
✔ 单元格数据全部经由计算动态完成。
现在,这个透视表已经变成了等效的OLAP公式计算形式,这就可以任意排布单元格的位置。
而且还可以将原有的英文显示全部转化为中文显示,更加符合终端用户的习惯,如下:
此时可以根据排版需要重新进行布局,而每个单元格数值都是独立的,彻底实现了自由报表。如下所示:
制作上述报表非常简单,完全是在Excel中排布单元格并使用基本作图即可完成。当然,该报表还有更多优化空间,但这以足够说明在使用OLAP工具下,有更多的灵活性可以制作任意格式的报告,当然这就是数据分析师自由发挥的阶段了。
小结
通过本文的学习,可以从本质上理解微软究竟在做了一件什么事,那就是把旗舰级数据分析平台SQL ServerAnalysis Services的引擎装入Power BI Desktop并作为独立产品提供给数据分析师。
数据分析师不仅可以在Power BI Desktop中获取数据,转换数据,建立模型,通过DAX进行任意复杂的计算和查询,并通过丰富的可交互式图表了解及确认想要的结果,并最终可以与世界级最强大通用的Excel平台贯通,在Excel中以OLAP透视表的形式获取到分析结果,最终制作出自由式报告,满足任意报告制作需求。
正如本文开篇所述,通过四篇文章的学习,也许还没有来得及掌握这其中涉及到的每个“单词”(DAX函数),就已经领略了DAX建模整套过程,宛如一幅鸿篇巨著就诞生在每位数据分析师的笔记本电脑上。想象一下,与客户进行了充分的沟通,打开PowerBI Desktop载入了几百万的数据,通过熟练的操作,设计了DAX数据模型并设置好了精确的度量计算,然后在Excel中建立连接并生成一份自由式分析报告,邮件发送完毕,喝一口星巴克咖啡,没错,这就是我们要的,敏捷商务智能:想要的,现在就要。
小目标 | DAX高级实践-Power BI与Excel联合应用的更多相关文章
- 一起学微软Power BI系列-官方文档-入门指南(6)Power BI与Excel
今天介绍了官方入门文档中有关PowerBI和Excel的知识.前几篇入门文档有点仓促,加上最近时间的研究,会有更多技巧性和入门型的文章或者视频发布,最后2篇入门文档将更加详细一点,因为部分文章进行简单 ...
- 数据可视化之powerBI入门(十一)认识Power BI数据分析语言DAX
DAX是英文Data Analysis Expression的缩写,意思是数据分析表达式,从名称上就可以看出,DAX公式是用作数据分析的,事实上也确实如此,从数据分析层面认识DAX会更有助于我们理解它 ...
- 2019微软Power BI 每月功能更新系列——Power BI 4月版本功能完整解读
Power BI4月份的更新对整个产品进行了重大更新.此版本增加了基于DAX表达式定义视觉效果标题和按钮URL的功能.本月Power BI也新增了许多新的连接器,现在可以使用几种预览连接器,包括Pow ...
- 2018 ,请领取您Power BI 年终报告
Power BI365 3Jan 2019 新年已至,岁寒温暖! 为方便Power BI用户们能快速找到所需要的Power BI各类型文章,小悦将2018年Power BI的所有精彩文章按照各应用场景 ...
- 您应该将报表从Excel转换为Power BI的8个原因
传统上,Microsoft Excel是企业的首选报告工具,但Power BI为企业提供了强大的分析和报告功能.通过快速实验可视化,广泛数据集的统计功能和计算,以及快速重组字段动态获得答案的能力,很明 ...
- 微软Power BI 每月功能更新系列——10月Power BI 新功能学习
Power BI Desktop10月产品功能摘要 本月Power Plus Desktop的更新充满了整个产品的小型和大型改进.一个巨大的更新是Power BI服务支持我们的复合模型和聚合预览.这实 ...
- 数据可视化之powerBI入门(四)Power BI与PowerQuery、PowerPivot有什么关系
https://zhuanlan.zhihu.com/p/64146209 Power BI与PowerQuery.PowerPivot有什么关系? 刚开始学习PowerBI的时候,总是能碰到Powe ...
- OLAP阵营又增一猛将,比肩Power BI不是说说而已!
说到大数据应用最多的技术,不得不提OLAP技术,在国内外,不论传统公司还是互联网公司,都开始利用OLAP技术分析挖掘大数据的价值.也许很多人对OLAP的概念还不是很清楚,简单来说,就把数据处理成数据立 ...
- 自助分析工具Power BI的简介和应用
作为一名资深的IT技术人,特别喜欢学习和尝试新技术,也勇于接受挑战,勇于创新,不仅能发现问题,更要解决实际的疑难杂症,闲暇时光也乐于分享一些技术干货.记得2017年的时候,华章出版社的编辑通过网上找到 ...
随机推荐
- 希尔排序(java)
希尔排序是对直接插入排序的一种优化,基本思想是把待排序的数据元素分成若干个小组,对同一小组内的数据元素用直接插入法排序:小组的个数逐次缩小:当完成了所有数据元素都在一个组内的排序后排序过程结束.希尔排 ...
- Entity Framework5学习笔记
主要 是学习DbContext http://zzk.cnblogs.com/s?w=DbContext&t=b
- Robot Framework基础学习(五)
Selenium2Library 常用关键字介绍 关于Selenium2Library 的关键字,我们可以参考:http://rtomac.github.io/robotframework-selen ...
- hdu3047 Zjnu Stadium (并查集)
Zjnu Stadium Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tota ...
- c 无回显读取字符/不按回车即获取字符
最近课程设计要使用各种有趣的函数,这是其中一个 #include <conio.h> 使用方法 char c; c=getch(); 这样按下输入一个字符不按回车就ok了
- 远程访问Linux系统桌面
让Windows可以远程访问Linux系统桌面 http://jingyan.baidu.com/article/d8072ac47b810eec95cefde8.html linux系统下,11款 ...
- EF中外键重命名,打破原先的约束规则
本人建议玩code frist的人多用用System.ComponentModel.DataAnnotations和System.ComponentModel.DataAnnotations.Sche ...
- 3DMAX 多维材质及对应的UVW展开,UVW贴图
多维材质说明 多维材质就是一个模型多个材质,(混合材质是多个材质混一起,跟这个貌似没关,比如地表草地,泥土等的混合操作) 作用: 比如一个模型就是需要两种材质,刀的金属刀身,木质刀柄,墙的一面是木板, ...
- 利用外部协议让chrome启动外部应用程序
http://bbs.kafan.cn/thread-1254526-1-1.html 原理:很简单,标题写的很明确了,不懂的google去. 步骤:举个例子,我要启动D:\Programe file ...
- cogs 1901. [国家集训队2011]数颜色
Cogs 1901. [国家集训队2011]数颜色 ★★★ 输入文件:nt2011_color.in 输出文件:nt2011_color.out 简单对比时间限制:0.6 s 内存限制 ...