我的编程空间,编程开发者的网络收藏夹
学习永远不晚

使用Power BI构建数据仓库与BI方案

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

使用Power BI构建数据仓库与BI方案

使用Power BI构建数据仓库与BI方案

杀手级特性

今年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

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

使用Power BI构建数据仓库与BI方案

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

使用Power BI构建数据仓库与BI方案

杀手级特性今年Power BI的几大杀手级特性的GA,可以让其构建完整的数据仓库/数据湖和BI分析一站式方案。Power BI Premium Per User-超低的价格Large datasets in Power BI Premium-内置完整的SSAS
使用Power BI构建数据仓库与BI方案
2020-03-23

Microsoft Power BI连接本地mysql 数据库 !power bi提示此连接器需要安装一个或多个其他组件才能使用怎么办!

最终解决方案竟然是卸载8.0.33版本,下载8.0.32版本…吐血,知道真相的我眼泪掉下来 大家可以直接跳到【亲测有用——知道真相的我眼泪掉下来】这一部分。 一、步骤 (一)从菜单栏点击进入mysql数据库 点击主页>获取数据>更多 选择
2023-08-24

数据仓库的基石:使用 DDL 构建强大的数据集

数据仓库的坚实基础:利用 DDL 构建强大的数据集
数据仓库的基石:使用 DDL 构建强大的数据集
2024-02-19

使用 JavaScript 数据类型构建健壮的 Web 解决方案

数据类型在 JavaScript 中至关重要,它决定了变量存储数据的类型和操作它们的方式。本文将探讨 JavaScript 中各种数据类型,并通过示例演示如何在 Web 解决方案中有效使用它们。
使用 JavaScript 数据类型构建健壮的 Web 解决方案
2024-03-06

使用navicat 8实现创建数据库和导入数据 管理用户与权限[图文方法]

使用navicat8实现创建数据库和导入数据的方法,需要的朋友可以参考下。
2022-11-21

编程热搜

目录