Power BI 知识框架（Excel、Power BI、Power Query、Power Pivot、M语言、DAX语言）
Power BI是Microsoft的业务分析服务。它的目的是提供交互式可视化和商业智能功能，其界面应足够简单，以使最终用户可以创建自己的报告和仪表板。使用Microsoft Power BI 数据可视化工具将数据转变成机遇。通过分析企业数据获得见解，提高企业的决策水平。随着数据分析工具的不断更新，我们所熟知的Excel可能已经不是你想象中的样子了。Excel和Power BI又有何千丝万缕的联系？M语言和DAX语言又是什么样的存在？操作他们又需要掌握什么样的技能？通过我的讲解，从此你将发现一扇通往新世界的大门，开启你新的人生，让我们启航吧！为方便书写，以下内容使用简写Power Query : PQPower Pivot : PPPower BI Desktop : PBI一、先让我们大致了解下他们的联系关系说明：在Office2010时代，BI组件均以插件形式存在；2013时代，除了PQ，其他插件已全部内置；2016时代已全部内置相关插件；而Power BI就是将这些插件打包起来做了一个独立的软件，更加方便我们的使用，同时提供了在线版、移动版、桌面版，而我们通常所说的PBI指的就是Power BI的桌面版（Power BI Desktop）。其中BI组件包含Power Query、Power Pivot、Power View、Power Map四个。操作Power Query需要学习M语言、操作Power Pivot需要学习DAX语言，两则均属于函数式编程。而Power View和Power Map主要是做可视化，在Excel里面不是重点，已经逐渐被更为强大的PBI的仪表板取代。Power BI系列组件:Power BI 是一套商业分析工具，用于在组织中提供见解，全称：Power-BI决策分析系统。可连接数百个数据源、简化数据准备并提供即时分析。集数据获取、整理、呈现于一体。早期作为插件和Excel搭配使用，后续逐渐内置到Excel当中，现在已经开发出来独立的软件可以使用。二、对各部分做个简单的介绍Office Excel关于Office办公软件就不做过多的介绍了，只需要知道从Excel 2010开始才涉及到我们今天开始讲的内容，这之前的版本比如2003版和2007版均不支持相关功能。Excel 中可用的三大数据分析工具：Power QueryPower Query 是一种数据连接技术，可用于发现、连接、合并和优化数据源以满足分析需要。Power Query 的功能在 Excel 和 Power BI Desktop 中可用。通常需执行一些常见步骤才可使用 Power Query。——微软的解释Power Query使用场景：1、PQ可以加载N多种数据源，包括常见的Excel文件、文件夹、TXT文件、CSV文件、SQL Server、MySQL、Web等。可对数据进行合并、追加等之前需要VBA才能完成的工作。2、PQ操作完的步骤可以重复执行，下次再操作同样的步骤只需要刷新即可得到最新的数据。3、PQ写好的操作步骤可以再次编辑和更改，还可调整操作步骤。你可以想象成你录制了一个宏，并且这个宏是可以根据你的需要随时可以编辑的。如果我们直接修改宏的代码实现则需要学习VBA编程，但是在PQ里面操作基础功能只需要像在Excel中的工具栏按钮进行操作一样简单。4、PQ加载的数据可以突破Excel中100万行的限制，而加载数据的大小取决于你的内存上限。我曾经测试过9千万条的数据进行加载，而有人测试过100亿条数据。 在你原有的认识中你认为Excel可以加载100亿条数据吗？5、PQ和PP结合，我们出日报则只需要更新数据源后刷新一下就可以完成。对于重复性的工作，可以称为是【神器】，效果堪比VBA，但学习门槛缺非常低。6、Office2010、Office2013没有内置PQ，使用必须去微软官网下载插件才能使用。下载Power Query，下载安装后会在Excel菜单栏新增一个Power Query的菜单。Office2016内置了PQ，在数据菜单下-新建查询。M语言：M语言是操作PQ的语言，目前由700多个函数组成。但你不用怕，我们学习PQ只是为了完成我们基本的工作，没有必要对这些函数全部都熟悉，就像我们学习Excel不需要对VBA和全部的函数熟悉一样，只需要掌握几个基本的函数即可让你游刃有余，即便是你不会任何M函数，则依然可以通过工具栏上的按钮来实现，而且很多功能与Excel中是类似的，学习门槛很低。后续我会提供这些按钮的功能讲解和PQ的相关操作教程。Power Query总结：你可以简单的理解为是一个数据加载和数据清洗工具。在实际操作中由于受限于Power Query计算效率，通常作为数据加载使用的较多，但其数据清洗功能也是非常强大的，甚至可以做网络爬虫。Power PivotPowerPivot 是一种数据建模技术，用于创建数据模型，建立关系，以及创建计算。 可使用 PowerPivot 处理大型数据集，构建广泛的关系，以及创建复杂（或简单）的计算，这些操作全部在高性能环境中和所你熟悉的 Excel 内执行。——微软的解释Power Pivot使用场景：1、PP是PQ的好搭档，一般配合使用的场景非常多，如果你要做一份日报，可以通过PQ加载数据直接生成想要的数据。如果有更加复杂的需求可以再链接到PP里面使用度量值+多维数据集函数将你需要的结果返回。下次在做日报只需要在更新数据源后全部刷新即可完成。下载Power Pivot2、可以突破数据透视表的限制，制作更加自由的数据呈现结构。3、可对整个数据库进行复杂查询，具有快速内存处理能力，和PQ一样不受Excel100万行的限制，结合使用DAX Studio可以实现类似SQL的查询效果。4、和PQ一样，也无需受限于数据来源形式，PP也支持非常多的数据源格式，不需要受限于Excel文件。我们可以选择直接使用PP加载源数据，也可也通过PQ加载然后再链接到PP中进行使用。5、使用PP中的DAX语言可以有两个方向，数据分析方向和数据查询方向。数据分析方向主要使用度量值，数据分析师使用的较多。查询方向是使用DAX处理各种复杂的表格关系，其查询效果类似SQL。DAX语言：与PQ一样，操作PP也需要一门变成语言，叫做DAX语言。DAX语言由200多个函数组成，和PP的M语言均被成为函数式编程。看到编程二字，你不必害怕，因为DAX的函数实际上部分函数跟我使用的Excel函数一样或者类似，如果作为入门你会很快上手。涉及到DAX更加复杂的操作需要你需要理解两个概念：筛选上下文和行上下文，后续我会做简单的介绍。Power Pivot总结：PP主要适用于数据模型的搭建方向，作为数据的查询也是优秀的工具。PQ和PP是一对在数据处理方面具有划时代意义的工具。但不要听到搭建数据模型就感觉很复杂，其实并没有我们想象的那么高大上，只要开始学习都会很容易的入门。Power ViewPower View 是一种数据可视化技术，用于创建交互式图表、图形、地图和其他视觉效果，以便直观呈现数据。 Power View 在 Excel、BI SharePoint、SQL Server 和 Power BI 中均可用。——微软的解释Power View、Power Map使用场景：Power View在Excel中已经被微软放弃，如果你对Excel不熟悉，你甚至找不到它，所以实际工作中，使用的并不是很多，而这部分内容在PBI中对应的就是仪表板。而Power Map在Excel中做展示使用的相对多一些，而同样可以在PBI中通过地图来实现。三、学习BI组件的入门途径从Excel入门-该方法适合Excel用户如果你之前只是使用Excel，那么可以通过Excel开始学习这些BI组件，你会发现这将颠覆你以前对Excel的认识。从Power BI入门-该方法适合数据分析人员如果你是一名数据分析相关人员，那么使用Power BI Desktop将是一个不错的选择，其和Excel中的组件基本雷同，可以非常方便的使用仪表板展示你所需要表达的内容，是数据分析师的不二之选。从SSAS入门-该方法适合开发人员SSAS是SQL Server的一个组件，具体我也未曾使用过，是属于企业级BI的工具。从任何途径开始学习都可以对其他部分触类旁通，其关键部分均是一样的。四、缺点凡是都有两面，虽然PQ和PP万般好，但是也有其限制。1、不适合数据量特别大的数据，一般数据超过2G就不建议使用了，其效率会明显降低。而我们平时处理个几十万上百万的数据还是非常流畅的。如果要优化其性能并结合SQL使用能发挥更大的效果。2、PQ的计算效率低，在之前的探讨中，如果大量在PQ中做复杂的计算会导致计算效率明显降低，尤其是分组操作、合并查询等。我们目前的处理方式是仅使用PQ加载数据并做简单的数据清洗，大量的分析和计算则交给PP来做，因为PP的效率比PQ高了很多。但PQ的效率依然比在Excel里面高了很多。3、定位有点尴尬，一般办公人员学习可能稍嫌难一些，同时作为IT人员一般又不屑于使用。但目前的现状正在改善，Power BI也在不断迭代，桌面版平均每月都有更新，有时候甚至是周，已经成为微软战略及产品，学习BI的人员也在不断的增多。4、参考资料少，不像Excel那么成熟，教程特别多，网上随处可见。BI组件的有质量的教程网上还是不太容易找，这些限制了部分想要学习的同学的积极性。如果是Excel入门可以看看刘凯老师翻译的《用PowerPivot建立数据模型》，如果是从PBI入门可以看看马世权老师的《从Excel到Power BI》，或者也可也看下Power 工坊的网络课程。后续我也会写或者录制一些相关的教程，方便大家学习。五、总结其实今天已经介绍了非常多的内容，最后也做一个总结。我得声明一下，今天我介绍的功能，WPS都是不支持的，必须是微软Office办公软件才可以。如果你是首次使用PP，这需要设置一下，才能使用，文件-选项-自定义功能区-将开发工具打勾，设置完毕后点击开发工具菜单下的COM加载项，对Power Pivot勾选后才能使用，会多一个Power Pivot的菜单。原文：Excel、Power BI、Power Query、Power Pivot、M语言、DAX语言之间的关系