关于数据仓库 —lookup表的一点看法

简介:
对于搞数据仓库的人来说,面试的时候总会问及到lookup表的概念。。。。。。
对于搞数据仓库的人来说,面试的时候总会问及到 lookup 表的概念,这个概念一开始对我而言也是很莫名其妙的;明明基础表和事实表的一个关联就可以完成的事情需要什么 lookup 表。
通常的做法
SELECT A.ID,SUM(Measure1) as Measure1,SUM(Measure2) as Measure2 FROM table_original A,table_dimension B
WHERE A.ID = B.ID
 
为了严谨起见,我们的处理最多是加以 NULL 值或者未匹配键值的处理
SELECT -- A.ID,B.ID, -- the transformed field names ID
DECODE(NVL(A.ID,-2),-2,-2, DECODE(NVL(B.ID,-1),-1,-1,B.ID)) AS ID,
SUM(CASE A.Measure1>0 AND A.Measure1<100 THEN Measure1 ELSE 0 END
) Measure1,
SUM(CASE A.Measure2>0 AND A.Measure2<100 THEN Measure2 ELSE 0 END
) Measure2,
FROM table_original A,table_dimension B
WHERE A.ID = B.ID(+)
GROUP BY DECODE(NVL(B.ID,-2),-2,-2, DECODE(NVL(B.ID,-1),-1,-1,B.ID)) 
 
 
但是对于老外来说,为了严谨起见,把维度做为历史处理的轨迹进行保存,主要是全记录处理方式其中包括版本号方式、时戳方式、标志方式(具体处理方式参看数据仓库系列文章);所以必须增加一个代理主键,以记录和替代原来不断变化的内容,从而保存原主键信息的变化轨迹。主键的变化导致与原事实表关联过程中的脱节,必须使用新的外键代理原来的外键值。同时主键的变化导致在与事实表关联过程的变化,当然我们也可以使用复杂的视图和函数方式寻找到相应的外键值;但是对于老外来说宁愿用最简单的方式,图形化的操作和最直观的方式进行处理,毕竟数据库、数据仓库、 ETL 图形工具全部都是由老外发明的。实现的原理其实很简单:
 







本文转自baoqiangwang51CTO博客,原文链接:http://blog.51cto.com/baoqiangwang/309765 ,如需转载请自行联系原作者
相关文章
|
存储 算法
数据仓库数据模型之:极限存储--历史拉链表
摘要: 在数据仓库的数据模型设计过程中,经常会遇到文内所提到的这样的需求。而历史拉链表,既能满足对历史数据的需求,又能很大程度的节省存储资源。 在数据仓库的数据模型设计过程中,经常会遇到这样的需求:1. 数据量比较大;2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等;3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的
5468 0
|
存储 SQL 大数据
一篇文章搞懂数据仓库:三种事实表(设计原则,设计方法、对比)
一篇文章搞懂数据仓库:三种事实表(设计原则,设计方法、对比)
一篇文章搞懂数据仓库:三种事实表(设计原则,设计方法、对比)
|
1月前
|
Cloud Native 关系型数据库 MySQL
云原生数据仓库产品使用合集之在ADB中,如何将源数据的多表(数据结构一致)汇总到一张表
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
1月前
|
消息中间件 SQL Kafka
实时计算 Flink版产品使用合集之构建实时数据仓库时,如何操作在几分钟内一直变化的表
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
8月前
|
存储 数据挖掘 关系型数据库
数仓学习---6、数据仓库概述、 数据仓库建模概述、维度建模理论之事实表、维度建模理论之维度表
数仓学习---6、数据仓库概述、 数据仓库建模概述、维度建模理论之事实表、维度建模理论之维度表
|
1月前
|
数据挖掘 数据库
离线数仓6.0--- 数据仓库 ER模型-范式理论,维度模型、维度建模理论之事实表、维度建模理论之维度表
离线数仓6.0--- 数据仓库 ER模型-范式理论,维度模型、维度建模理论之事实表、维度建模理论之维度表
163 0
|
1月前
|
存储 大数据 数据管理
数据仓库(08)数仓事实表和维度表技术
所谓的事实表和维度表技术,指的就是如何和构造一张事实表和维度表,是的事实表和维度表,可以涵盖现在目前的需要和方便后续下游数据应用的开发
74 1
|
12月前
|
SQL 存储 HIVE
数据仓库系列--维度表技术
数据仓库系列--维度表技术
114 0
|
存储 大数据 BI
聊聊数据仓库中维度表设计的二三事
聊聊数据仓库中维度表设计的二三事
757 0
聊聊数据仓库中维度表设计的二三事
|
大数据 BI
一篇文章搞懂数据仓库:维度表(设计原则、设计方法)
一篇文章搞懂数据仓库:维度表(设计原则、设计方法)
一篇文章搞懂数据仓库:维度表(设计原则、设计方法)

热门文章

最新文章