第八章 维度设计之维度变化


维度变化的描述

与事实表变化相比,维度表变化相对缓慢,如何描述维度表的变化,有以下三种方式:

1)重写维度值:这种方式直接覆盖原数据


变化前


变化后

2)插入新维度行:可以保留历史数据,但不能将变化前后的事实数据归一化

变化后

3)添加维度列:添加一个新列表示当前类目

变化后

三种方式根据对历史数据的具体需求,选择相应的方法


快照维表

       基于数据仓库的更新周期,每个周期保留一份全量的维度表快照数据,可以随时获取当天的维度数据信息。这种方式使用便捷,但是浪费了极大的存储空间


极限存储

1)历史拉链存储:新增两个时间戳,记录变更起始时间,将所有以天为粒度的变更数据记录下来,起始时间也作为分区字段。假设一个场景,卖家1第一天上架AB商品,第二天下架B商品,上架C商品

全量存储方式



极限存储方式

使用极限存储的方式每天更新变化数据,获取某一天数据需要限制起始时间,如访问1月1日数据,stat<=20160101 and end>20160101

2)分月做历史拉链表可以减少分区的数量

3)通常使用存有近期数据的全量数据表+历史拉链表配合使用

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 10,790评论 0 9
  • 转自:http://blog.csdn.net/oreo_go/article/details/52116214 ...
    YYT1992阅读 4,676评论 0 4
  • 第三章 数据库系统 3.1 数据库管理系统的类型 通常有多个分类标准。如按数据模型分类、按用户数分类、按数据库分布...
    步积阅读 7,883评论 0 7
  • 她是一名歌手 10年前,她以惊世骇俗的姿态示人,并用自己的第一张专辑横扫全球,随后自己作词作曲以“癫狂”的态势收获...
    Alejandrobin阅读 3,382评论 0 0
  • Author:Mr.柳上原 付出不亚于任何的努力 愿我们所有的努力,都不会被生活辜负 不忘初心,方得始终 昨天刚写...
    Mr柳上原阅读 5,404评论 0 13