首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏大数据学习与分享

    数据建模-维度建模-维度设计

    导读: 在Kimball维度建模中,通常将度量称为“事实”,将环境描述为“维度”,维度是用于分析事实所需要的多样环境。维度维度属性是维度的两个核心概念,如何构建维度的属性是维度设计中需要关注的。 作为维度建模的核心,我们在企业级的数据仓库中必须保证维度的唯一性。以淘宝商品维度为例,我们有且只允许有一个维度定义。 第二步:确定主维度表。 二、第二部分 在Kimball维度建模中,通常将度量称为“事实”,将环境描述为“维度”,维度是用于分析事实所需要的多样环境。 02 快照维表 维度的基本概念中介绍了自然键和代理键的定义,在Kimball的维度建模中,必须使用代理键作为每个维度表的主键,用于处理缓慢变化维度。 但在阿里巴巴数据仓库建设的实践过程中,虽然我们使用的是Kimball的维度建模的理论,但实际并未使用代理键。我们是如何处理缓慢变化维度,如何记录变化历史的呢?为什么不使用代理键呢?  

    1.5K31编辑于 2023-09-06
  • 来自专栏木东居士的专栏

    详解维度建模

    维度建模解决了模式过分复杂的问题。 我们换一种方式来解释什么是维度建模。学过数据库的童鞋应该都知道星型模型,星型模型在数据仓库的设计中可以为是一种典型的维度模型。 我们在进行维度建模的时候会建一张事实表,这个事实表就是星型模型的中心,然后会有一堆维度表,这些维度表就是向外发散的星星。那么什么是事实表、什么又是维度表吗,下面会专门来解释。 0x02 基本概念 维度建模中有一些比较重要的概念,理解了这些概念,基本也就理解了什么是维度建模。 为了便于理解,我们先假设一个业务场景:聊天! 比如短信聊天、软件聊天这些聊天场景。 0x03 实践 下面我们将以聊天场景为例,详细讲一下维度建模建模方式,并举例如果使用这个模型(这点还是很重要的)。 维度模型在很多开源的系统都中都有支持,比如Kylin,在建模的时候就是用的维度建模中的星型模型,当然在最新版本中也支持了雪花模型。

    8.9K121发布于 2018-05-25
  • 来自专栏鸿的学习笔记

    维度建模已死?

    维度数据建模更是其数据分析和建模的核心理念。 感兴趣的同学可以读下《数据仓库工具箱:维度建模权威指南》和阿里巴巴的《大数据之路》,从这两本书可以了解到维度数据建模的理论和工程实践。 维度数据建模起源于数据仓库权威专家 Ralph Kimball,虽然很多人说维度数据建模有很多种优点,但是作者认为其核心的优点有三个:优化计算、按主题组织数据和优化存储。 这些优点在历史上推动了维度数据建模在数据仓库领域的发展,吸引了很多人,但是站在此时此刻(2022年),我们需要重新审视为什么维度数据建模会存在和它是如何从根本上满足我们的需求的。 检索成本更高的值存储在维度表中,可以有选择地检索,从而节省处理成本。 那么为什么维度数据建模会消失呢?

    52631编辑于 2022-04-14
  • 来自专栏小晨讲Flink

    最新维度建模学习笔记

    分享嘉宾:丘山,一线互联网数仓开发工程师 编辑整理:交个朋友 出品平台:小晨说数据 导读:小丘哥哥最近学习维度建模,整理了一些学习心得,跟大家一起分享一下,相互学习,共同进步,感觉好文章底部点个赞,鼓励一下小丘哥哥哈哈 01 为什么要维度建模? 提高数据访问效率,空间换时间 拆解复杂的处理过程,分层加工 降低原系统变更影响,层次化让模型更具有弹性 04 维度建模的三种方法? 维度建模维度建模是从分析的角度,将业务数据重新按照事实和维度的形式进行组合,用于度量某个业务过程 朴素维度建模方法 面向原系统维度建模方法 面向业务看流程维度建模方法 05 常用名词? ,可以进行聚合和计算,例如下单金额 06 维度建模四个步骤?

    56350编辑于 2022-03-09
  • 来自专栏全栈程序员必看

    维度建模方法论

    维度建模方法 一、前言 本人学习《数仓工具箱》的学习总结,纯学习分享,供大家参考。 ---- 二、经典数仓架构理论 围绕着维度建模,那就不得不了解,早期的数据仓库构架方法。 参考:深入对比数据仓库模式:Kimball vs Inmon 三、维度建模步骤 3.1、设计企业服务总线 需要调查业务过程以及业务过程所涉及的公共维度维度建模是紧贴业务的,所以必须以业务为根基进行建模,那么选择业务过程,顾名思义就是在整个业务流程中选取我们需要建模的业务,根据运营提供的需求及日后的易扩展性等进行选择业务。 为什么要提相同粒度呢,因为维度建模中要求我们,在同一事实表中,必须具有相同的粒度,同一事实表中不要混用多种不同的粒度,不同的粒度数据建立不同的事实表。 维度建模的核心原则之一是同一事实表中的所有度量必须具有相同的粒度。这样能确保不会出现重复计算度量的问题。有时候往往不能确定该列数据是事实属性还是维度属性。记住最实用的事实就是数值类型和可加类事实。

    1.4K20编辑于 2022-11-09
  • 来自专栏全栈程序员必看

    数仓建模与分析建模_范式建模维度建模

    建模方法论 今天我们主要介绍常见的建模方法,这也就是我们今天文章的名称——建模方法论 20年前兴起的数据仓库简单的可分为两大流派,Inmon方法和Kimball方法,分别由 Ralph Kimbal和Bill 区别的关键在于如何在数据仓库中建模、加载和存储数据的方式。而由此出发的不同架构影响到了数据仓库的建设成本和到适应用户不断变化的ETL逻辑的能力。 建模的目的 数仓的建模或者分层,其实都是为了更好的去组织、管理、维护数据,所以当你站在更高的维度去看的话,所有的划分都是为了更好的管理。

    73210编辑于 2022-11-09
  • 来自专栏Spark学习技巧

    聊聊维度建模的灵魂所在——维度表设计

    前言 维度表是维度建模的灵魂所在,在维度表设计中碰到的问题(比如维度变化、维度层次、维度一致性、维度整合和拆分等)都会直接关系到维度建模的好坏,因此良好的维表设计就显得至关重要,今天就让我们就一起来探究下关于维表设计的相关概念和一些技术 因此在维度建模中,这一现象称为缓慢变化的维度,简称 缓慢变化维(slowly changing dimension, SCD)。 该技术适用于维度建模中不需要保留此维度属性历史变化的情况,常用于错误订正或者维度属性改变无关紧要的场景,比如用户的生日之前发生输入错误,不需要保留之前的生日历史数据。 那么维度建模如何处理这些层次结构呢? 在维度建模中,我们采用第一种来处理维度的层级问题,这样反规范化的处理牺牲了部分存储,但是给用户使用带来了便捷,也降低了学习使用成本。

    2K40发布于 2021-07-27
  • 来自专栏有关SQL

    最新维度建模学习笔记

    分享嘉宾:丘山,一线互联网数仓开发工程师 编辑整理:交个朋友 出品平台:小晨说数据 导读:小丘哥哥最近学习维度建模,整理了一些学习心得,跟大家一起分享一下,相互学习,共同进步,感觉好文章底部点个赞,鼓励一下小丘哥哥哈哈 01 为什么要维度建模? 提高数据访问效率,空间换时间 拆解复杂的处理过程,分层加工 降低原系统变更影响,层次化让模型更具有弹性 04 维度建模的三种方法? 维度建模维度建模是从分析的角度,将业务数据重新按照事实和维度的形式进行组合,用于度量某个业务过程 朴素维度建模方法 面向原系统维度建模方法 面向业务看流程维度建模方法 05 常用名词? ,可以进行聚合和计算,例如下单金额 06 维度建模四个步骤?

    72342发布于 2020-10-10
  • 来自专栏数据库

    论道数据仓库维度建模和关系建模

    维度建模以分析决策的需求为出发点构建模型,一般有较好的大规模复杂查询的响应性能,更直接面向业务,典型的代表是我们比较熟知的星形模型,以及在一些特殊场景下适用的雪花模型。 ,主要是简单的报表系统;后期数据量越来越大,系统越来越多,尝试用ER建模的数据仓库,但是在实践中发现快速变化的业务之下,构建ER模型的风险和难度都很高,现在则主要采用基于维度建模的模型方法了。” 但Inmon和kimball关于关系建模维度建模的争论其实也没什么值得探讨的,没有谁更好,在企业内,这两种建模方式往往同时存在,底层用关系建模合适一点,技术的优雅换来了数据的精简,往上维度建模更合适一些 ,靠数据的冗余带来了可用性,优势互补,都说关系建模不易,概念模型是个坎,其实维度建模也不易,维度的梳理和运营是艰巨的,否则就是烂摊子的活。 在数据建模上,很多人纠结于如何建模,用关系建模维度建模亦或其它?

    2.3K80发布于 2018-02-24
  • 来自专栏全栈程序员必看

    浅谈大数据建模的主要技术:维度建模

    文章目录 前言 维度建模关键概念 度量和环境 事实和维度 事实表 维度表 星形架构和雪花架构 维度建模一般过程 1. 选取业务过程 2. 定义粒度 3. 确定维度 4. Ralph Kimball 维度建模理论很好地回答和解决了上述问题。 维度建模理论和技术也是目前在数据仓库领域中使用最为广泛的、也最得到认可和接纳的一项技术。 维度建模关键概念 度量和环境 维度建模是支持对业务过程的分析,所以它是通过对业务过程度量进行建模来实现的。 那么,什么是度量呢? 度量和环境这两个概念构成了维度建模的基础。而所有维度建模也正是通过对度量和 及其上下文和环境的详细设计来实现的。 维度建模一般过程 维度建模一般采用具有顺序的 个步骤来进行设计,即选择业务过程、定义粒度、确定维度和确定事实。 维度建模的这 个步骤贯穿了维度建模的整个过程和环节,下面逐一介绍。 1.

    1.6K10编辑于 2022-08-11
  • 来自专栏Lansonli技术博客

    数仓基础(四):维度建模理论之维度

    维度建模理论之维度表一、维度表概述维度表是维度建模的基础和灵魂。前文提到,事实表紧紧围绕业务过程进行设计,而维度表则围绕业务过程所处的环境进行设计。 维度表主要包含一个主键和各种维度字段,维度字段称为维度属性。二、维度表设计步骤1、确定维度(表)在设计事实表时,已经确定了与每个事实表相关的维度,理论上每个相关维度均需对应一张维度表。 需要注意到,可能存在多个事实表与同一个维度都相关的情况,这种情况需保证维度的唯一性,即只创建一张维度表。 另外,如果某些维度表的维度属性很少,例如只有一个XX名称,则可不创建该维度表,而把该表的维度属性直接增加到与之相关的事实表中,这个操作称为维度退化。 维度表的粒度通常与主维表相同。3、确定维度属性确定维度属性即确定维度表字段。维度属性主要来自于业务系统中与该维度对应的主维表和相关维表。维度属性可直接从主维表或相关维表中选择,也可通过进一步加工得到。

    1.1K11编辑于 2024-10-27
  • 来自专栏大数据解决方案

    数仓建模 - 维度 vs 关系

    发展至今以维度建模和关系建模为主,而随着互联网的发展,数据从GB到PB的裱花,企业业务迭代更新亦是瞬息万变,对维度模型的偏爱渐渐有统一互联网数仓建模标准的趋势。 维度模型以实体与实体之间发生的事务/实为切入,而关系建模则以实体与实体之间的关系来组织数据。在当前的环境下,互联网更倾向于维度建模,而传统行业则较多沿用关系建模。 模型理念 维度建模 以事实表为核心,多个维度表作为手臂形成的星型模型,是维度建模的典型实现方式。 建模实现的对比 维度建模:从实际的需求出发进行数据建设,一般面向部门/业务形成独立的数据集市,这样的方式带来鲜明的特点,高效。 从建模风格上看,它采用了一种由第三范式方法与维度建模方法混合而成的方式,以二者的独特组合来满足企业需求。

    1.1K31编辑于 2022-02-17
  • 来自专栏Spark学习技巧

    浅谈数仓模型(维度建模

    数仓设计的3个维度: ? 当前主流建模方法为:ER模型、维度模型。 问题 维度建模的缺点 维度建模之前需要进行大量的数据预处理,因此会导致大量的数据处理工作(ETL)。 当业务发生变化,需要重新进行维度的定义时,往往需要重新进行维度数据的预处理。 如果只是依靠单纯的维度建模,不能保证数据来源的一致性和准确性,而且在数据仓库的底层,不是特别适用于维度建模的方法。 维度建模的领域主要适用与数据集市层,它的最大的作用其实是为了解决数据仓库建模中的性能问题。维度建模很难能够提供一个完整地描述真实业务实体之间的复杂关系的抽象方法。 当前公司的数仓模型架构: ? ; 3、宽表的涉及不依赖具体的业务需求而是根据整体业务线相匹配; 4、尽量用维度建模代替宽表; 为什么说尽量用维度建模代替宽表,就算字段和数据会冗余,维度建模的方式也会表全量数据的宽表模式较好,原因:

    2.5K40发布于 2021-07-27
  • 来自专栏全栈程序员必看

    维度建模——数据仓库初步

    分类目录:商业智能《维度建模》总目录 本文是《维度建模》后续文章的基础。 《维度建模》系列文章将紧紧抓住业务需求这一要点,逐步深入探讨逻辑设计、物理设计以及采用有关技术和工具的决策等问题。 基于此背景,我们将探索维度建模核心概念并建立基本词汇表。 下一篇文章将总结针对维度建模的诸多错误理解,并解释为什么在处理DW/BI项目时,既需要从数据库管理员的角度,也需要从商业分析师的角度考虑问题。 数据仓库与商业智能的目标 在开始深入研究维度建模的细节前,关注数据仓库与商业智能的基本目标是非常有益的。

    36810编辑于 2022-08-23
  • 来自专栏五分钟学大数据

    通俗易懂数仓建模—Inmon范式建模与Kimball维度建模

    今天我们就来聊下这两种建模方式——范式建模维度建模。 本文开始先简单理解两种建模的核心思想,然后根据一个具体的例子,分别使用这两种建模方式进行建模,大家便会一目了然! 可以看出,在 Kimball 的维度建模中,不需要单独维护数据关系表,因为关系已经冗余在事实表和维度表中。 在限定的维度条件上,计算商品单价的总和,也就是 sum 度量值,即可得到我们想要的结果。 ---- 维度建模,就是依靠维度进行建模,但是如果维度设计的不合理,会不会带来问题呢? 所以,互联网公司更多场景下趋向于使用 Kimball 维度-事实的设计反而可以更快地完成任务。 四、两种建模混合场景 通过以上几个小节我们已经理解了范式建模维度建模的思想以及它们之间的异同,优缺点。 利用维度建模方法建设数据集市。

    3K11发布于 2021-04-15
  • 来自专栏小黎子数据分析

    数据仓库系列之维度建模

    按照一般书籍的介绍,维度建模还会分为星型模型、雪花模型等,各有优缺点,但很少直接回答一个问题,也就是数据仓库为什么要采用维度建模? ? 星型模型 ? 2、各种数据建模方法:如维度建模、范式建模法、实体建模法。 3、辅助系统:调度系统、元数据系统、ETL系统、可视化系统这类辅助系统。 因此,下面的将详细地阐述数据建模中的典型代表:维度建模,对它的的相关理论以及实际使用做深入的分析。 接下来具体来了解维度建模 一、什么是维度建模 维度模型是数据仓库领域大师Ralph Kimball 所倡导,他的《数据仓库工具箱》,是数据仓库工程领域最流行的数仓建模经典。 星型模型 二、维度建模的基本要素 维度建模中有一些比较重要的概念,理解了这些概念,基本也就理解了什么是维度建模。 1.

    1.5K30发布于 2019-08-26
  • 来自专栏腾讯大讲堂的专栏

    维度建模和指标体系构建

    01 数仓建模综述 数据建模是数据开发工作中的核心与基石,好的模型体系好处很多: 降低成本:优秀的模型设计能够提升数据复用性,减少计算/存储资源浪费 提升开发效率:优秀的模型设计能够降低数据使用门槛,减少工作量 目前业界使用最多的模型是Ralph Kimball 在《数据仓库工具》中提出的维度建模模型,其中典型的代表如星型模型,雪花模型。 一个典型的维度建模一般需要经过如下几个步骤: 业务调研:调研需要建模的业务形态,划分基本的业务线/数据域 层次设计:定义数仓层级,保证各层级之间职责明确,划分清晰 规范设计:定义数仓中表/字段的命名规范 05 模型实施 业务调研和架构设计 在构建数仓模型之前首先要分析建模的业务过程,主要包含以下三块工作: 调研业务场景和数据需求,划分业务板块和数据域 设计数仓架构:构建总线矩阵,抽象数据域下的业务过程和维度主体 因此在数仓建模的时候应该考虑将两者维护在同一个数据仓库之下,减少重复开发。

    4.5K41发布于 2020-11-23
  • 来自专栏数据派THU

    数仓建模——维度表详细讲解

    来源:菜鸟数据之旅 本文约2100字,建议阅读5分钟 维度表是一种数据建模技术,用于存储与数据中心的各个业务领域相关的维度信息。 一、 维度表是什么 维度表是一种数据建模技术,用于存储与数据中心的各个业务领域相关的维度信息。它通常用于构建数据仓库、数据集市等决策支持系统,以便进行多维数据分析和报告。 在数据仓库中,维度表是与事实表相对应的表。维度表是维度建模的基础和灵魂。 三、维度表设计步骤 1)确定维度(表) 在设计事实表时,已经确定了与每个事实表相关的维度,理论上每个相关维度均需对应一张维度表。 维度表的粒度通常与主维表相同。 3)确定维度属性 确定维度属性即确定维度表字段。维度属性主要来自于业务系统中与该维度对应的主维表和相关维表。

    1.7K10编辑于 2023-05-11
  • 来自专栏Spark学习技巧

    维度建模技术实践——深入事实表

    事实表是维度建模的核心表和基本表。 它存储了业务过程中的各种度量和事实,而这些度量和事实正是下游数据使用人员所要关心和分析的对象。 事务事实表 事务事实表是维度建模事实表中最为常见、使用最为广泛的事实表。 事务事实表通常用于记录业务过程的事件,而且是原子粒度的事件。 理解概念的最佳途径无疑是实际的例子,因此下面将结合超市零售业务以及维度建模的四个环节来说明事务事实表。 以学生在各门课程中的出席情况为例给出无事实的事实表的维度设计方案: ? 总结 在经典的维度建模事实表设计中,事实表将仅存储维度表外键、选定的度量以及退化维度等,例如我们前面提到的超市零售事务事实表。 但是在大数据时代,随着 HDFS、MapReduce 为代表的各种分布式存储和计算技术的发展,存储成本以及性能等不再是关键,所以在维度建模理论反规范化思想的基础上,可以更进一步地把常用的维度属性沉淀在事实表中

    1.8K20发布于 2021-07-27
  • 来自专栏架构师修炼

    漫谈数据仓库之维度建模

    详细介绍维度建模的基本概念以及相关理论。 为了能更真切地理解什么是维度建模,我将模拟一个大家都十分熟悉的电商场景,运用前面讲到的理论进行建模。 一、什么是维度建模 维度模型是数据仓库领域大师Ralph Kimall所倡导,他的《数据仓库工具箱》,是数据仓库工程领域最流行的数仓建模经典。 维度建模以分析决策的需求出发构建模型,构建的数据模型为分析需求服务,因此它重点解决用户如何更快速完成分析需求,同时还有较好的大规模复杂查询的响应性能。 我们换一种方式来解释什么是维度建模。 学过数据库的童鞋应该都知道星型模型,星型模型就是我们一种典型的维度模型。我们在进行维度建模的时候会建一张事实表,这个事实表就是星型模型的中心,然后会有一堆维度表,这些维度表就是向外发散的星星。 那么什么是事实表、什么又是维度表吗,下面会专门来解释。 二、维度建模的基本要素 维度建模中有一些比较重要的概念,理解了这些概念,基本也就理解了什么是维度建模。 1.

    92820发布于 2021-01-05
领券