前言

之前的笔记提到了《Power BI 数据模型的核心概念》,本文继续深入讨论数据模型的设计架构,同时介绍两种常用的数据模型:星型模型和雪花模型


BI 的数据模型和数仓模型有什么不同?

数据仓库和Power BI中使用的数据架构模型有一些相似之处,但也有一些关键区别。

  • 数据仓库模型更加专业化和复杂化,针对数据加载和历史记录保留进行了优化。
  • BI模型更简单,侧重于易用性和性能,通常使用汇总或聚合数据。BI模型还可以合并来自多个来源的数据。
  • 数据详细程度不同,数据仓库模型存储细粒度数据,而BI模型通常汇总或聚合数据。

规范化& 非规范化

这里引入两个术语:
规范化,指以减少重复数据的存储方式, 反之,没有减少重复数据的数据存储表,就是非规范化

产品表中有唯一的产品编号列(ProductKey)和产品特征列(产品名称、类别、颜色、尺寸)。在规范化的销售表中,仅存储ProductKey,只有 ProductKey 列记录产品信息;而非规范化的表格,还包括了产品的详细信息,多了许多重复的产品信息。

在实际应用中,我们只需要通过ProductKey 将销售表和产品表关联起来,即可得到每一单的商品详细信息。所以在开发和优化数据模型时,分析师可以通过将非规范化的数据转换成规范化表,进而提高数据模型的效率。

星型模型

星型模型由一个事实数据表和多个非规范化的维度表构成,可以帮助分析人员简化数据表格,是由关系数据仓库广泛采用的成熟建模方法 。
通常情况下,维度表包含的行数相对较少。 另一方面,事实数据表可能包含非常多的行,并行数会随着时间的推移不断增长。

雪花模型

雪花模式是星型模式的变体,其中维度表是规范化的,这意味着它们被拆分为多个相关的表以减少冗余。这可能使模式更复杂,但也更适用于某些类型的查询,例如涉及跨多个维度过滤或聚合数据的查询。

雪花维度

在 Power BI中,完全使用雪花模型可能导致模型过大,效率降低,因此,分析师可以根据需求模拟雪花维度的设计,将部分维度表规范化。

例如,Adventure Works (官方提供的案例数据 ) 按类别和子类别将产品分类。 产品分配给子类别,而子类别又相应地分配给类别。 在 Adventure Works 关系数据仓库中,“产品”维度经过了规范化并存储在三个相关表中:DimProductCategory 、DimProductSubcategory 和 DimProduct 。

处理非规范数据的方式

1. 定义层次结构

在选择集成到一个模型表中时,还可以定义一个层次结构,其中包含维度的最高和最低粒度。 冗余非规范化数据的存储可能会增加模型存储大小,尤其是在维度表很大的情况下。

2. 通过Power Query提取维度表

比如前面提到的销售表,包括了所需的产品信息详情,可以通过PQ对销售表进行操作,复制原数据表格,删除冗余信息及重复项,生成规范化的产品信息表。

3. 通过DAX公式提取维度表

可以根据现有的数据字段,提取需要的维度表,根据上面的合并表,如果需要一个商品名称的维度表,在DAX编辑框中输入:

产品表 = DISTINCT('销售表'[产品名称])

DISTINCT函数可以提取一列中不重复的值。

Power BI 数据模型设计及搭建——星型模型雪花模型相关推荐

  1. 【转】设备数据通过Azure Functions 推送到 Power BI 数据大屏进行展示

    设备数据通过Azure Functions 推送到 Power BI 数据大屏进行展示(1.准备工作) 原创 Sean Yu 云计算实战 2019-12-06 本案例适用于开发者入门理解Azure F ...

  2. 《Microsoft Power BI数据可视化与数据分析》之超市运营数据分析

    14.3.1  各省份销售额柱形图 在"字段"窗格中,将"销售额"字段拖到画布上的空白区域,然后将"省/自治区"字段拖动到"可视化 ...

  3. [Power BI] Power BI数据建模

    Power BI处理的表往往是多个的,Power BI的优势就是打通来自各个数据源中的各种数据表,根据不同的维度.不同的逻辑来聚合分析数据,从而进行数据分类汇总和可视化呈现.前提是各个表之间需要建立某 ...

  4. 【DBMS 数据库管理系统】多维数据模型 ( 星型模式 | 雪片模型 | 事实群模型 | 度量 | 分布型 | 代数型 | 整体型 )

    文章目录 一.星型模式 二.星型模式 缺点 三.雪片模型 四.星型模型 雪片模型 折衷方案 五.事实群模型 ( 仅做了解 ) 六.度量 一.星型模式 星型模式 是 多维数据模型 的表现形式 ; 星型模 ...

  5. CIKM 2021 | 多场景下的星型CTR预估模型STAR

    ▐ 摘要 阿里妈妈展示广告需要为大量的场景提供广告排序能力,在业务场景数急剧膨胀的背景下,我们开始研究多场景联合建模.本篇文章主要介绍,我们在多场景建模下遇到的挑战.挑战背后的思考以及算法工程 co- ...

  6. 阿里妈妈技术:多场景下的星型CTR预估模型STAR

    阿里妈妈技术:多场景下的星型CTR预估模型STAR 1.背景 问题定义 2.建模方案(STAR) 2.1.STAR Topology Fully-Connected Network 2.2.Parti ...

  7. (星型、雪花、星座、交叉连接)多维数据模型各种类型优劣分析

    概述 在数据仓库的建设中,一般都会围绕着星型模型和雪花模型来设计表关系或者结构,同时从模型中又衍生出星座模型和交叉模型.下面我们先来理解这几种模型的概念和比较. 事实 和 维度 我们先来了解一下事实和 ...

  8. OLAP+星型模型+雪花模型

    OLAP+星型模型+雪花模型 主键+外键 事实表+维度表 OLAP:联机分析技术( On-Line Analytical Processing) OLTP:On-Line Transaction Pr ...

  9. 理解数据仓库中星型模型和雪花模型

    在数据仓库的建设中,一般都会围绕着星型模型和雪花模型来设计表关系或者结构.下面我们先来理解这两种模型的概念. (一)星型模型图示如下: 星型模是一种多维的数据关系,它由一个事实表和一组维表组成.每个维 ...

最新文章

  1. 专访阿里资深研发工程师窦贤明:PG与商业数据库差距并不明显
  2. 请求时的编码问题 Use body.encode(‘utf-8‘) if you want to send it encoded in UTF-8
  3. 数据库服务器文件路径,如何在服务器中找到数据库文件路径
  4. 从电源问题出发,带你揭秘新体系结构范式 COA
  5. 结构体的传参理解成员的存储方式
  6. linux将mysql导出表数据导入另一台服务器_远程linux服务器mysql数据库导入和导出.sql文件...
  7. 2011 - 12 - 12记录2011 - 12 - 11
  8. hp服务器增加raid卡,惠普ProLiant服务器Raid卡配置过程详解
  9. java静态链表_静态链表及其创建(C语言实现)
  10. 好好看看PHP 呼呼
  11. PHP程序员7小时学会Kotlin 第二小时
  12. 运营效果分析:假设检验
  13. asp html5留言板,ASP.NET MVC 开发实例:简单留言板的开发
  14. [Wireshark]交换机设置镜像端口并使用Wireshark抓包异常流量分析病毒种类
  15. python科学计算基础教程pdf下载-python科学计算 第二版
  16. 配合字体图标的搜索框
  17. Ctrl+Z的相反快捷键(附最全AndroidStudio常用快捷键)
  18. Android6.0以下系统判断相机权限
  19. 经典激光雷达SLAM系统:LOAM-Livox
  20. STM32网址大全(快速定位网址查找资料)

热门文章

  1. 区块链运营之误解与成长
  2. COMSOL软件入门仿真框架建立及软件基本操作
  3. Ubuntu 配置新手入门
  4. java 动物类 继承 Bird Dog Fish
  5. Linux进程相关,fork,wait,waitpid,WIFEXITED
  6. 计算机行业新财富排名,2019年富人排行榜_2019新财富500富人榜
  7. 最近地震也太太太频繁了吧?! | Alfred数据室
  8. ROS学习之tf在rviz中的显示
  9. 前端学习:文本溢出隐藏
  10. K型热电偶转换函数(VB代码)