杀手级特性

今年Power BI的几大杀手级特性的GA,可以让其构建完整的数据仓库/数据湖和BI分析一站式方案。

  • Power BI Premium Per User-超低的价格
  • Large datasets in Power BI Premium-内置完整的SSAS引擎
  • Dataflows and Azure Data Lake Gen 2-与Azure数据湖集成,数据共享
  • XMLA endpoint-开放编程接口和第三方工具接入
  • DirectQuery for Power BI datasets and Azure Analysis Services-复合模型,BI语义模型的最终形态

架构

  1. 数据接入:Dataflows是Power Query的web版,支持接入关系数据库,文件/文件系统,SaaS应用,API等上百种数据源
  2. 数据萃取:Power Query提供完全的图形化操作对数据进行提取、转换和加载处理
  3. 数据存储:处理后的数据以CDM存储在Azure Data Lake上,极低的价格存储并拥有和关系数据库一样的结构化定义
  4. 数据建模:完整的SQL Server Analysis Services内存引擎,支持100G+的内存
  5. 可视与分析:Power BI交互式报表与仪表板,由于内置的SSAS使报表与数据解耦

准备条件

Power BI Premium Per User账号

Azure Data Lake Gen 2订阅

SSDT,使用Visual Studio社区版即可

Power BI Desktop

SQL Server Analysis Services 2019服务器

DAX Studio(可选)

Excel(可选)

Azure Synapse Analytics(可选)

环境配置

新建工作区

开启高级容量

连接Azure Data Lake

Azure Data Lake需要和Power BI在同一数据中心区域,并保证Azure Data Lake IAM权限。

查看Azure Data Lake

配置完成后会自动创建2个对象存储容器

数据仓库

数据接入

新建数据流,启动Power Query

基于成本的原因,本次使用Azure Data Lake做数据源,读取了11张表,如下图

(正常使用时本地/云端的数据库都可 ,一个数据流里支持多个数据源)

数据萃取

ETL加工里面的各种场景在Power Query里都可以轻松实现,并且是完全图形化操作,本次以下面几种演示:

  • 代理键

  • 派生列

  • 行列拆分

(拆分到行还为移植到web端)

  • 多源(含异构)整合-合并查询,追加查询

追加查询支持列不固定,如下图

  • JSON字段

还有缓慢变化,透视与逆透视,分类汇总,向上/下填充,列内容提取等很多场景就不展开了,后续会一个Power Query的数据处理专题.

调度刷新

对于有日期时间字段的表,可以配置增量刷新

数据流的调度刷新配置

数据存储

数据调度完成后以CSV文件格式存储在Azure Data Lake中,元数据存在model.json中

数据刷新后自动构建拉链表模式,由于有model.json元数据,使用时默认最新的版本

数据探索(可选)

由于数据存储在Azure Data Lake中,可以使用支持Azure存储或HDFS的各种工具或接口访问使用.本次演示使用Azure Synapse Analytic的无服务SQL引擎和Spark引擎

BI模型

SSAS模型

为了使开发的模型在本地SSAS环境和Power BI公有云环境上都可使用,这次使用SSDT开发,若只考虑公有云使用Power BI Desktop即可.

新建SSAS 2019模型,选择集成工作区模式

读取Dataflows的数据,由于当前SSDT工具还未发布Azure Data Lake 2的接口,那就使用Azure Blob接口

Power BI Desktop直接用Azure Data Lake 2

开发模型:建好表关系,度量值,计算列,行级权限

本此演示的就是一个最基础的SSAS模型结构,3张事实表的星座模型

多维度分层行级权限

模型发布

部署服务器地址,设置不处理

powerbi://api.powerbi.com/v1.0/myorg/FIN

使用SSMS连接SSAS环境

在SSMS上使用模型处理命令

分区

SSDT或SSMS设置分区

Power BI Desktop设置增量刷新

调度配置

可视与分析

Power BI在线编辑

Power BI Desktop

使用Power BI数据集接

使用Analysis Services接口,输入服务器地址powerbi://api.powerbi.com/v1.0/myorg/FIN

模型关系图

Excel

2019以下的版本使用Analysis Services连接,Office 365版本有Power BI数据集接口

第三方工具等

支持XMLA的工具都可以连接内置的SSAS模型

本次以DAX Studio演示,如下图:

最后

Power BI的按用户数收费模式,不限制使用量,模型完成后无限制用户查询

Azure Data Lake的无限制存储,按使用量计费

两者的价格组合以极低的成本构建企业级数仓BI解决方案

本次以批处理数仓演示,二次建模复合模型直连关系数据库涉及实时场景

Power BI自身的流式实时,Azure Data Lake流式写入待后续blog讲解.

由于Power BI的特性结合Azure Data Lake可以做数仓,但与Azure Synapse Analytics并不冲突,两者数据都是存储在Azure Data Lake,可以共用一个存储。

面向不同的用户,Azure Synapse Analytics面向IT,Power BI面向业务自助。

文档

数据流和自助数据准备简介 - Power BI | Microsoft Docs

在 Power BI 中使用 XMLA 终结点连接和管理数据集 - Power BI | Microsoft Docs

将数据流存储配置为使用 Azure Data Lake Gen 2 - Power BI | Microsoft Docs

使用适用于数据集和 Azure Analysis Services 的 DirectQuery(预览版) - Power BI | Microsoft Docs

Power BI Premium Per User - Power BI | Microsoft Docs

使用Power BI构建数据仓库与BI方案的更多相关文章

  1. 观未见,行不止 —— Power BI 两周年技术和方案交流圆桌会议纪实

    作者:陈希章 发表于 2017年8月13日 2017年8月11日下午两点,Power BI 两周年技术和方案交流圆桌会议如期举行.线上和线下约有100位朋友参加了由我组织和主持的本次活动,在两个小时的 ...

  2. 使用ETL构建数据仓库的思考

    使用ETL构建数据仓库的思考 背景:公司的数据仓库建设项目启动在即,所谓万事开头难,如何在我们数仓建设规划的前期做好业务数据准备和系统建设规划是我们需要思考的问题,这里根据之前的自己参与过的公司ODS ...

  3. 企业bi解决方案,商业智能BI作用

    ​随着越来越多的公司将商业智能BI引入到日常运营和商业决策中,BI的热点逐渐起来了.商业智能系统兴起,那BI对企业有什么好处呢? 简单的说,就是可以帮助企业管理者直观清晰的看到自己想要关注的数据,帮助 ...

  4. Hadoop生态圈-构建企业级平台安全方案

    Hadoop生态圈-构建企业级平台安全方案 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 能看到这篇文章的小伙伴,估计你对大数据集群的部署对于你来说应该是手到擒来了吧.我之前分享过 ...

  5. ETL构建数据仓库五步法

    原文:http://huangy82.blog.163.com/blog/static/49069827200923034638409/ ETL构建企业级数据仓库五步法 在数据仓库构建中,ETL贯穿于 ...

  6. 胖子哥的大数据之路(10)- 基于Hive构建数据仓库实例

    一.引言 基于Hive+Hadoop模式构建数据仓库,是大数据时代的一个不错的选择,本文以郑商所每日交易行情数据为案例,探讨数据Hive数据导入的操作实例. 二.源数据-每日行情数据 三.建表脚本 C ...

  7. 拥有自助式BI要摒弃传统BI?

    简单来说BI就是从data中提取知识和信息的一套软件解决方案.商业智能 (BI,Business Intelligence) 也就是BI,是为企业把数据转换为信息.知识 ,相应蕴育而出的IT技术.企业 ...

  8. 传统式BI工具和自助式BI工具到底有什么区别

    相信很多人都听说过BI工具,但是你听说过自助BI工具吗?自助式BI工具面向没有IT背景的业务分析师,比传统的BI工具灵活易用,在一定程度上摆脱了对IT部门的大幅度依赖,使数据产品链更加大众化,更加理解 ...

  9. Greenplum——大数据时代高性能的数据仓库与BI应用平台

    一. Greenplum简介 大数据是个炙手可热的词,各行各业都在谈.一谈到大数据,好多人认为就是Hadoop.实际上Hadoop只是大数据若干处理方案中的一个.现在的SQL.NoSQL.NewSQL ...

随机推荐

  1. ElasticSearcher的安装以及安装过程中出现的问题

    先给出参考链接,带安装成功后再进行总结整个过程. 参考链接:https://blog.csdn.net/fjyab/article/details/81101284 java操作ElasticSear ...

  2. ImageApparate(幻影)镜像加速服务让镜像分发效率提升 5-10 倍

    作者介绍 李昂,腾讯高级开发工程师,主要关注容器存储和镜像存储相关领域,目前主要负责腾讯容器镜像服务和镜像存储加速系统的研发和设计工作. 李志宇,腾讯云后台开发工程师.负责腾讯云 TKE 集群节点和运 ...

  3. Android Studio|IntelliJ IDEA Git使用小技巧

    一 分支管理 1. 新建分支 在master的基础上创建新分支dev 2. 推送分支 将新建的分支dev推送到远程 3. 切换分支 4. 合并分支 当我们在dev分支完成代码修改并测试通过后 需要将d ...

  4. 剑指 Offer 41. 数据流中的中位数 + 堆 + 优先队列

    剑指 Offer 41. 数据流中的中位数 Offer_41 题目详情 题解分析 本题使用大根堆和小根堆来解决这个寻找中位数和插入中位数的问题. 其实本题最直接的方法是先对数组进行排序,然后取中位数. ...

  5. FreeBSD ports 多线程编译

    FreeBSD ports 多线程编译FORCE_MAKE_JOBS=yesMAKE_JOBS_NUMBER=4写入/etc/make.conf没有就新建.4是处理器核心数,不知道就别改.

  6. 使用伪类(::before/::after)设置图标

    使用伪类(::before/::after)设置文本前后图标.减少标签的浪费,使页面更加整洁. 如图: <!DOCTYPE html> <html> <head> ...

  7. maven 常用命名

    maven项目,在命令行中操作,非常简洁.高效,现将maven项目常用命令行总结如下: maven命令行命令总结 序号 整理 统计 命令 作用 1 基本 5 mvn -v 查看maven版本 2 mv ...

  8. vue-cli3.0 开发环境构建

    vue-cli3.0官网 1.node版本 node版本要求node>=8.9以上(推荐 8.11.0+)使用以下命令查看node版本 node -v 如果不是最新的请到node下载下载最新版本 ...

  9. FIL怎么获得?FIL在哪里购买?

    从一些交易网站可以看到,FIL 这几天有一个比较大的涨幅,这让许多投资 FIL 的朋友大松一口气:FIL,你终于不装睡了.估计许多关注区块链的小伙伴看到消息又要问了:FIL 怎么获得?FIL 在哪里购 ...

  10. HDU-6862 Hexagon (2020HDU 多校 D8 H)

    1008 题意:半径为n的六边形(由半径为1的小六边形组成),从某一个小六边形出发有六个方向,找到一条转向次数最多的路径(用方向表示)遍历所有的六边形(一个六边形只访问一次). 题解:先画出n=3/4 ...