首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

事实表与维度表

事实表与维度表 前文介绍了一维表和二维表的异同及相互转换 今天再来解释一下事实表与维度表 先来看下表。回忆下,这是一维表二维表?...那就把业务表里这种有大量重复的数据单独拎出来,放到另一张表里,通过表关联把二者连接在一起(如何提高表格运行效率,属于数据库范畴,涵盖了很多知识点。...(聚合) 为什么把它称为“维度”,见下图 为了计算长度、面积或体积,我们把物体长宽高各维度相乘 同样,为了计算报表中值的数量,也可以通过报表的独立属性和层次结构中的成员数目相乘,那么“独立属性”和“层次结构...”,就是报表的维度 搞清了“维度表”,那“事实表”也就不难理解了 事实表:表格里存储了能体现实际数据或详细数值,一般由维度编码和事实数据组成 维度表:表格里存放了具有独立属性和层次结构的数据,一般由维度编码和对应的维度说明...(标签)组成 现实工作中,维度表要设多广多深,没有固定,看具体业务场景和数据规模 比如制造业,生产现场的时间维度可能要精确到秒 再比如销售,地区维度除了省市区,可能还要加个大区概念(华北、华东等) 证券行业里

2.2K40

数据仓库中的维度表和事实表概述

事实数据表的主要特点是包含数字数据(事实),并且这些数字信息可以汇总,以提供有关单位作为历史的数据,每个事实数据表包含一个由多个部分组成的索引,该索引包含作为外键的相关性纬度表的主键,而维度表包含事实记录的特性...一般来说,一个事实数据表都要和一个或多个纬度表相关联,用户在利用事实数据表创建多维数据集时,可以使用一个或多个维度表。...维度表 维度表可以看作是用户来分析数据的窗口,纬度表中包含事实数据表中事实记录的特性,有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息,维度表包含帮助汇总数据的特性的层次结构...在维度表中,每个表都包含独立于其他维度表的事实特性,例如,客户维度表包含有关客户的数据。维度表中的列字段可以将信息分为不同层次的结构级。...事实表就是销量表,维度表就是地区表。

4.7K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据仓库(08)数仓事实表和维度表技术

    所谓的事实表和维度表技术,指的就是如何和构造一张事实表和维度表,是的事实表和维度表,可以涵盖现在目前的需要和方便后续下游数据应用的开发。 事实表,就是一个事实的集合。...累计快照事实表:累积快照事实表的行汇总了发生在过程开始和结束之间可预测步骤内的度量事件。也就是记录整一个业务过程,如下单,包含下单时间,支付时间,赔付时间等。...一致性维度,当不同的维度表的属性具有相同列名和领域内容时,称维度具有一致性。利用一致性维度属性与每一个事实表关联,可将来自不同事实表的信息合并到同一个报表里面。...我们整理了维度表和事实表之后,我们需要形成一个总线矩阵。总线矩阵用于设计数据仓库架构的基本工具,矩阵的行表示业务过程,列代表维度。矩阵中的点表示维度与给定的业务过程是否存在关系,如下图。...(04)基于维度建模的数仓KimBall架构数据仓库(05)数仓Kimball与Inmon架构的对比数据仓库(06)数仓分层设计数据仓库(07)数仓规范设计数据仓库(08)数仓事实表和维度表技术 数据仓库

    1K10

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

    事实表是维度建模的核心表和基本表。 它存储了业务过程中的各种度量和事实,而这些度量和事实正是下游数据使用人员所要关心和分析的对象。...(4)确定事实 维度设计的最后一步,是确定哪些事实和度量应该在事实表中出现。对于本例,商品销售数量、销售价格和销售金额很容易确定下来。...至此,我们也完成了超市零售事务的事实表和维度表的设计,超市零售事务事实表以及相关的维度表如图所示: ?...(3)确定维度 对于累计周期快照事实表,相关的维度包含快照周期(天、周、月 和年等)、理赔申请人、受理 、审核人、网点 电话或者实体)等。...无事实的事实表 在维度建模中,事实表是过程度量的核心,也是存储度量的地方 但事实表并不总是需要包含度量和事实,这类不包含事实的事实表被称为 无事实的事实表。

    1.6K20

    维度模型数据仓库(十七) —— 无事实的事实表

    这时就要用到无事实的事实表技术。使用此技术可以通过持续跟踪产品的发布来计算产品的数量。可以创建一个只有产品(计什么数)和日期(什么时候计数)维度代理键的事实表。...之所以叫做无事实的事实表是因为表本身并没有度量。        ...产品发布的无事实事实表  本节说明如何实现一个产品发布的无事实事实表,包括新增和初始装载product_count_fact表。...图(五)- 12-1         执行清单(五)-12-1里的脚本创建产品发布日期视图和无事实事实表。...“杂项维度”中的定期装载做了两点修改:“清空过渡表”作业项加了清空product_count_fact表;把初始装载产品数量事实表的步骤合并到了“装载事实表(定期)”作业项里。

    91310

    数据仓库专题(11)-可以作为维度表使用的事实表

    KDT#13 可以作为维度表使用的事实表 事实表从粒度的角度分为三种,分别是交易粒度事实表、周期快照事实表和累计快照事实表。 交易粒度事实表能提供某个确切时刻的描述信息。...这是一个典型的记录的度量事实都是文本型描述信息的事实表。这样的事实表和维度表之间的区别并不明显。 这个事实表中有三个是关联到普通维度表的外键,分别是变更日期、代理和交易类型。...帐户号(SK)是帐户的代理键,也是这个事实表的主键,它标识了这个事实表中的每一次变化。 我们可以将该事实表中的帐户号代理键做TYPE 2型缓慢变化维处理,并将它关联到其他事实表作为外键。...举例来说,我们除了收集帐号本身变动信息外,还会收集存取款情况和帐号余额信息,并建立事实表如下: 交易日期(FK) 帐户号(SK) 地点(FK) 交易类型(FK) 数额(可加性事实) 帐户余额(半可加性事实...我们会发现,前一张事实表和维度表并没有什么差别。

    97220

    数仓基础(三):维度建模理论之事实表

    维度建模理论之事实表一、事实表概述事实表作为数据仓库维度建模的核心,紧紧围绕着业务过程来设计。其包含与该业务过程有关的维度引用(维度表外键)以及该业务过程的度量(通常是可累加的数字类型字段)。...2、事实表分类事实表有三种类型:分别是事务事实表、周期快照事实表和累积快照事实表,每种事实表都具有不同的特点和适用场景,下面逐个介绍。...2、设计流程1)确定粒度周期型快照事实表的粒度可由采样周期和维度描述,故确定采样周期和维度后即可确定粒度。采样周期通常选择每日。...维度可根据统计指标决定,例如指标为统计每个仓库中每种商品的库存,则可确定维度为仓库和商品。确定完采样周期和维度后,即可确定该表粒度为每日-仓库-商品。...事实(度量值)共分为三类,分别是可加事实,半可加事实和不可加事实。1)可加事实可加事实是指可以按照与事实表相关的所有维度进行累加,例如事务型事实表中的事实。

    30110

    HAWQ取代传统数仓实践(十五)——事实表技术之无事实的事实表

    一、无事实事实表简介         在多维数据仓库建模中,有一种事实表叫做“无事实的事实表”。普通事实表中,通常会保存若干维度外键和多个数字型度量,度量是事实表的关键所在。...这时,通过建立促销范围事实表,将商场需要促销的商品单独建立事实表保存,然后通过这个促销范围事实表和销售事实表即可得出哪些促销商品没有销售出去。        ...可以创建一个只有产品(计什么数)和日期(什么时候计数)维度代理键的事实表。之所以叫做无事实的事实表是因为表本身并没有数字型度量值。...二、建立新产品发布的无事实事实表         在tds模式中新建一个产品发布的无事实事实表product_count_fact,该表中只包含两个字段,分别是引用日期维度表和产品维度表的外键,同时这两个字段也构成了无事实事实表的逻辑主键...因此在定义视图的查询语句中关联了产品维度和日期维度两个表。product_launch_date_dim维度是日期维度表的子集。 从字段定义上看,产品维度表中的生效日期明显就是新产品的发布日期。

    1K70

    Docker桥接网络生成路由表和主机的路由冲突解决

    Docker桥接网络生成路由表和主机的路由冲突通过以上的比较可以发现,证实了之前所说的:守护进程会创建一对对等虚拟设备接口 veth pair,将其中一个接口设置为容器的 eth0 接口(容器的网卡),...我们先通过ip route查看路由表,找到冲突的那一条路由信息,并查看路由名称。其中br后面的字符串就是接下去要用到的docker网络ID。ii....补充: 默认情况下,创建的容器在没有使用 --network 参数指定要加入的 docker 网络时,默认都是加入 Docker 默认的单机桥接网络,也就是下面的 name 为 bridge 的网络。...图片其中第一列即为网络ID,和前面查看的网络ID进行对应。(我这里由于已经删除所以没有显示)iii....的对应容器服务使用 docker rm 删除容器服务3 删除docker对应容器的网络配置信息使用docker network rm 删除对应网络配置信息此时系统路由表中的

    97110

    十三、表连接

    一、什么是表连接 表连接(JOIN)是在多个表中间通过一定的连接条件,使表之间发生关联进而能从多个表之间获取数据。...; 二、表连接的几种方式 表连接分为内连接、自连接和外连接,其中内连接的关键子是 join 或 inner join ,外连接又分为左连接(left join)、右连接(right join) 和 全外连接...三、各种表连接的区别 连接类型 定义 例子 内连接 只连接匹配的行 select A.c1,B.c2 from join B on A.c3=B.c3 左连接 包含左表全部行(不管右表是否存在与之匹配的行...例如: 有如下两个表 student 和 score stu_no name 1 张三 2 李四 2 王五 score_no stu_no course sc 1 1 数学 100 2 1 英语 99...查询存有分数的学生各科成绩: select stu.name,sco.sc from student stu join socre sco on stu.stu_no=sco.stu_no; TIP:右连接和左连接一样

    85610

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

    因此维度设计人员只在必要情况下使用此方法,同时需要告知下游分析人员。 采用重写维度值方法的维度表和事实表变化如图: ? 采用重写维度值方法处理变化维示例 2....属性改变前的事实表行和旧的维度值关联,而新的事实表行和新的维度值关联。 ?...同时,仔细观察订单事实表也会发现,过去的订单是和旧的唯独行关联,而新的订单和新的维度行关联。...通过新增维度行,我们保存了维度的变化,并实现了维度值变化前的 实和变化后的事实分别与各自的新旧维度值关联。 但是这也给维度表用户带来了困惑,为什么查询会员会在维度表中发现多行记录?...所谓数据集市一般由一张和多张紧密关联的事实表以及多个维度表组成,一般是部门级的或者面向某个特定的主题。数据仓库则是企业级的、面向主题的、集成的数据集合。

    1.6K40

    【MySql】表的内连接和外连接

    本篇博客主要介绍的内容是表的连接,在MySql中表的连接分为内连接和外连接,下面,我们直接进入主题把 内连接 内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,我们前面学习的查询都是内连接...-- 语法 select 字段 from 表1 inner join 表2 on 连接条件 and 其他条件; 对于内连接,我们还是通过案例来进行练习,加强理解: 显示SMITH的名字和部门名称 --...本质是差不多的 外连接 外连接分为左外连接和右外连接 左外连接 如果联合查询,左侧的表完全显示我们就说是左外连接 -- 语法 select 字段名 from 表名1 left join 表名2 on...-- 当左边表和右边表没有匹配时,也会显示左边表的数据 select * from stu left join exam on stu.id=exam.id; 这就是左外连接,看完了左外连接,我们更加容易理解右外连接了...-- 语法 select 字段 from 表名1 right join 表名2 on 连接条件; 下面,我们还是通过案例来对右外连接进行实际的运用,加强理解: 对stu表和exam表联合查询,把所有的成绩都显示出来

    27950

    数据仓库:详解维度建模之事实表

    一、事实表基础 1. 事实表特征 事实表作为数仓维度建模的核心,紧紧围绕着业务过程来设计,通过获取描述业务过程的度量来表达业务过程,包含了引用的维度和业务过程有关的度量。...作为度量业务过程的事实(事实表属性),一般为整型或浮点型的十进制数值,有可加性、半可加性和不可加性三种类型: 可加性事实 是指可以按照与事实表关联的任意维度进行汇总。...半可加性事实 只能按照特定维度汇总,不能对所有维度汇总,比如库存可以按照地点和商品进行汇总,而按时第门章事实表设计丁一间维度把一年中每个月的库存累 加起来则毫无意义。...; 在同一个事实表中不能有多种不同粒度的事实;粒度的声明是事实表设计中不可忽视的重要一步,粒度用于确定事实表中一行所表示业务的细节层次,决定了维度模型的扩展性,在选择维度和事实之前必须先声明粒度,且每个维度和事实必须与所定义的粒度保持一致...聚集补充说明 聚集是不跨越事实的 聚集是针对原始星形模型进行的汇总,为了获取和查询与原始模型一致的结果,聚集的维度和度量必须与原始模型保持一致,因 此聚集是不跨越事实的。

    2.8K10

    事实表,维度,度量,指标之间的关系

    事实表:每个数据仓库都包含一个或者多个事实数据表。事实数据表可能包含业务销售数据,如销售商品所产生的数据,与软件中实际表概念一样 维度:说明数据,维度是指可指定不同值的对象的描述性属性或特征。...例如,地理位置的维度可以包括“纬度”、“经度”或“城市名称”。“城市名称”维度的值可以为“旧金山”、“柏林”或“新加坡”。 指标:衡量数据,指标是指可以按总数或比值衡量的具体维度元素。...例如,维度“城市”可以关联指标“人口”,其值为具体城市的居民总数。 维度和指标的关系:虽然维度和指标可以独立使用,但常见的还是相互结合使用。维度和指标的值以及这些值之间的关系,使您的数据具有了意义。...为了挖掘尽可能多的深层次信息,维度通常与一个或多个指标关联在一起。 例如,维度“城市”可以与指标“人口”和“面积”相关联。...度量:事实表和维度交叉汇聚的点,度量和维度构成OLAP的主要概念,这里面对于在事实表或者一个多维立方体里面存放的数值型的、连续的字段,就是度量。

    2.5K10

    Oracle表连接

    * from TestA inner join TestB on TestA.id=TestB.idno where id1; 1.3、自然连接    自然连接是在两张表中寻找那些数据类型和列名都相同的字段...或者 LEFT OUTER JOIN)   LEFT JOIN是以左表的记录为基础的,示例中TestA可以看成左表,TestB可以看成右表,它的结果集是Test A表中的全部数据,再加上TestA表和...它的结果集是TestB表所有记录,再加上TestA和TestB匹配后的数据。 TestA表记录不足的地方均为NULL。...(FULL JOIN 或者 FULL OUTER JOIN)   左表和右表都不做限制,所有的记录都显示,两表不足的地方均为NULL。...(+)操作符不能与OR和IN操作符一起使用。 (+)操作符只能用于实现左外连接和右外连接,而不能用于实现完全外连接。

    72440

    面试之前,MySQL表连接必须过关!——表连接的原理

    比如下面把t1表和t2表连接起来的过程如下图 什么是连接查询? 比如上面t1和t2表的记录连接起来组成一个新的更大的记录,这个查询过程就称为连接查询。 什么是笛卡尔积?   ...外连接   对于外连接来说,即使驱动表中的记录按照连接条件和过滤条件在被驱动表中找不到匹配的记录,该记录也仍然需要加入到结果集。...而外连接的驱动表是固定的,左(外)连接的驱动表就是左边那个表,右(外)连接的驱动表就是右边那个表。 左(外)连接的语法: 比如要把t1表和t2表进行左连接查询。...假设t1表和t2表都没有索引,t1表和t2表内连接的大致过程如下: 步骤1:选取驱动表t1,使用与驱动表t1相关的过滤条件,选取成本最低的单表访问方法来执行对驱动表的单表查询。...哈希连接是在MySQL 8.0.18才引入的 以下是对哈希连接的详细介绍和举例分析:   哈希连接分为两个阶段:构建哈希表(Build phase)和探测哈希表(Probe phase)。

    1.9K10

    连表查询的介绍_连接表

    2.1表与表之间存在的关系 (1)一对多:在多的一方添加外键列 (2)多对多:需要创建一个中间表,该表中至少有两个外键列 2.2连表查询 2.3内连接 内连接演示—结果都是一样,只是语法不同。...select * from tb_emp e join tb_dept d on e.dept_id=d.id; 2.4、外连接 外连接演示 –1.查询emp表的所有数据, 和对应的部门信息(左外连接...) –2.查询dept表的所有数据,和对应的员工信息(右外连接) -- 语法: select 查询列集 from A表 left join B表 on 连表条件 -- 1.查询emp表的所有数据, 和对应的部门信息...join tb_dept d on e.dept_id=d.id; -- 2.查询dept表的所有数据,和对应的员工信息(右外连接) select * from tb_emp e right join...tb_dept d on e.dept_id=d.id; 2.5、自联查询 自己和自己相连接查询。

    3K20

    Oracle数据库 表连接与表设计

    一、99语法--表连接,rowid与rownum (一)99语法--表连接 1、交叉连接cross join --->笛卡尔积 select * from emp cross join dept;...= 20 and sal > 1500 order by sal desc; 5、join on|using -->外连接 --想要某张表中不满足连接条件的数据都显示,把这张表定义为主表 --左外...group by name,course); 2、rownum --规律: 把已确定的结果集中的数据从第一个开始 设置rownum,从1开始,依次+1 --优点: 有规律,规律可循,是数字,可以进行判断和分页操作...对视图的删除不会删除原有表的数据 drop view 视图名; 以下为操作过程: -- 视图: -- 建立在表和结果集之间的就是视图,其实也是结果集,但是这个结果集可以被存储,以后可以查询视图中的数据...索引在逻辑上和物理上都与相关的表和数据无关,当创建或者删除一个索引时,不会影响基本的表; 索引一旦建立,在表上进行DML 操作时(例如在执行插入、修改或者删除相关操作时),oracle

    2.2K20
    领券