前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全网首发 PowerBI 全动态中国式复杂矩阵完美增强版 4.0 版

全网首发 PowerBI 全动态中国式复杂矩阵完美增强版 4.0 版

作者头像
BI佐罗
发布2021-01-25 10:52:00
2.2K0
发布2021-01-25 10:52:00
举报
文章被收录于专栏:PowerBI战友联盟
一直有小伙伴问 PowerBI DAX 可以做多强大而灵活的事而又未在任何资料中记载,那么这里你也许将看到的就是前所未有的案例,它集合了几乎全部 DAX 强大特性并将 DAX 能力推向可见的最高阶段。

还有很多小伙伴学习了《PowerBI 全动态中国式复杂矩阵》的 1.0 和 2.0 版,已经获益良多,而今天,你将看到新的可能性。什么是 4.0 版?本文会给出说明。

今天,我们非常高兴地报告给各位伙伴,PowerBI DAX 已经可以实现完美的中国式复杂矩阵,它大概长的是这样的:

这类构造可能用到大量 DAX 特性以及函数,包括但不限于:筛选上下文,行上下文,上下文转换,DAX查询,VAR,EARLIER,SUMX,RANKX,TREATAS,{ },按列排序,CALCULATE,SWITCH,IN,数据沿袭等。

由于在极致复杂的状态下,可能是任意复杂的,除了需要坚实的 DAX 基础还需要精妙的 DAX 建模思想和方法方可有效实现。本文先来提出这类矩阵的业务展现要求,以及最终形态,让大家对这种终极矩阵的形态有所认识,并可以自己尝试实践。

后续文章,我们会陆续再讲解细节。

十大业务需求

以下列出业务人员对中国式复杂矩阵的十大需求:

  • 一、矩阵列头可以是任意排布的,如:任意顺序;
  • 二、矩阵行头可以是任意排布的,如:任意顺序;
  • 三、矩阵列头和行头是可以从层级选择的,如:多层级,从层级选择需要显示的内容;
  • 四、矩阵行头及内容可以支持动态 TOP N,如:用户选择 TOP N,不显示的收入其他;
  • 五、矩阵的单元格背景颜色可以是任意的,如:按照某种规则设置(且支持透明度),普通,小计,合计;
  • 六、矩阵的单元格字体颜色可以是任意的,如:正负的不同颜色等;
  • 七、矩阵的单元格数字格式可以是任意的,如:千分位整数,百分比,小数等;
  • 八、矩阵行的排序可以是任意的,如:按照销售额大小对行排序,但其他,小计,合计总在最后;
  • 九、矩阵的计算是全动态的,如:切片器和其他图表可以交叉筛选该矩阵;
  • 十、矩阵的数字是可以导出的,且保持数字格式可以在 Excel 中进一步处理。

这些就是中国式复杂矩阵从业务角度出发的十大诉求。

其实,业务完全可以提出让单元格的设置和 Excel 一样,那就相当于又要实现一套 Excel 了,那种工程是不可想象的,因此,我们在这里保留了最重要的十大诉求。如果您可以对照该十大诉求给出可复用的套路,你的 PowerBI 以及 DAX 的构建水品就可以满足日常应用了。

其中,具有真正核心地位的是第九点,它能来确保矩阵是动态,而不是一个固定死的矩阵。这也是 PowerBI DAX 有别于其他商业智能软件的根本所在。PowerBI 本身并没有一个官方说明来描述如何构建中国式复杂矩阵,因此,我们需要探索并寻求一套解决方案。

完美版的实现

虽然没有官方的介绍,但是我们还是探索和找到了这套完美实现方案。现在的方案是无懈可击的完美方案,原因很简单,它实现了上述所有十大业务需求。因此,我们称之为:《PowerBI 全动态中国式复杂矩阵完美版》史称 v3.0。

下面给出历史上,全网范围首发给出的 PowerBI 中国式复杂矩阵方法:

  • 2018-05-07 BI佐罗 全网首发《PowerBI 全动态中国式复杂矩阵》史称 v1.0
  • 2019-01-06 BI佐罗 全网首发《PowerBI 全动态中国式最强超级矩阵》史称 v2.0
  • 2021-01-08 BI佐罗 全网首发《PowerBI 全动态中国式复杂矩阵完美版》史称 v3.0
  • 2021-01-08 BI佐罗 全网首发《PowerBI 全动态中国式复杂矩阵完美增强版》史称 v4.0

你没有看错,完美的阶段已经被超越了,今日同时首发:《PowerBI 全动态中国式复杂矩阵完美增强版》史称 v4.0。

完美增强版到底增强了什么

作为完美增强版,是建立在完美版基础上的增强版本,它首先也满足了中国式复杂矩阵的十大业务需求。

主要有两点:

  • 性能优化
  • 设计模式

完美增强版(v4.0)与完美版(v3.0)有着完全一摸一样的面貌,然后 v4.0 的完美增强版将以至少 3 倍速高速运行,如下所示:

对于完美增强版(v4.0)而言,有着和完美版(v3.0)完全不同的实现方式:

  • v3.0 是基于模型层计算
  • v4.0 是基于视图层计算

模型层计算以及视图层计算的正式思路已经由BI佐罗《PBI高级》给出。

可以看出,v4.0 与 v3.0 的呈现结果完全相同,但速度是完美版的 3 倍之多。

完美版 v3.0 版本 DAX 公式鸟瞰:

完美增强版 v4.0 版本 DAX 公式鸟瞰:

完美版 v3.0 版本 DAX 引擎执行鸟瞰:

完美增强版 v4.0 版本 DAX 引擎执行鸟瞰:

很明显,相比于完美版 v3.0 版本 DAX 引擎执行而言,完美增强版 v4.0 将 DAX 引擎执行有了大幅度提升:

  • DAX 引擎 SE 查询优化了 5 倍以上
  • DAX 引擎 FE 查询优化了 3 倍以上

这些内容对于业务背景的伙伴都不需要理解,只需要看出这个结果是好的,就可以了。

完美增强版的设计模式

在完美增强版 v4.0 的设计中,用到了大量设计模式和思想,包括但不限于:

  • 视图层通用计算思想
  • 笛卡尔积通用表头构建模式
  • 动态挂载
  • 非侵入式设计
  • 钩子
  • 依赖注入
  • 面向切面的 AOP 设计模式
  • 计算组以及计算流透传模式

用到的 DAX 特性更是几乎包揽了所有 DAX 基础和高级特性。

总结

每一个学习 PowerBI DAX 的伙伴都应该做到:以极致的性能实现中国式复杂矩阵的十大业务通用需求。您可以对照该业务诉求,自行实现以上案例来作为测试。

完美版 v3.0 和完美增强版 v4.0 由于是基于完全不同的思路构建的,它们可以互作检查,如果它们的计算结果是一致的,那么,作业就对了,无需检查。

在构建中国式复杂矩阵的过程中,涉及到几乎所有 DAX 基础和高级特性,正可谓一个案例又顶了一套课程。

本来,BI佐罗 出品《PBI高级》已经详解了中国式复杂矩阵的 v1.0 及 v2.0 方案,而 完美版 v3.0 和完美增强版 v4.0 将补充首发在 BI佐罗 出品《PBI高级》中,这套课程无端端又被植入了一个超级案例。

《PBI高级》是BI佐罗出品的《BI真经》系列(共 7 门)的其中一门,如果您准备或正在学习 PowerBI,看了本文,如果你有分析的常识,应该分析下该如何选择学习课程了吧,很显然了啊。

《PBI高级》无端端又整合包括了:AOP超级设计模式,《PowerBI 全动态中国式复杂矩阵》完美版及完美增强版的详解,是不是应该再涨点价了呢?2021,我们将与您同行,让数据真正成为你的力量。

【点击查看】PBI中国式复杂矩阵 v1.0 【点击查看】PBI中国式复杂矩阵 v2.0 【点击查看】立即抢购BI佐罗出品《PBI高级》- 私信

【私信联系】立即抢购BI佐罗出品包括《PBI高级》在内的《BI真经》系列 - 私信

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PowerBI战友联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 十大业务需求
  • 完美版的实现
  • 完美增强版到底增强了什么
  • 完美增强版的设计模式
  • 总结
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档