Hadoop develop

博学笃志,切问近思,此八字,是收放心的工夫。 神闲气静,智深勇沉,此八字,是干大事的本领。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  189 随笔 :: 10 文章 :: 198 评论 :: 0 引用

一、前言

本文是《***分布式数据仓库最佳实践***》视频课程的学员答疑实录,学员答疑过程中,针对共性问题和具有代表性的问题,分享在此,算是立此存照。课程大纲见:《分布式数据仓库最佳实践-目录篇》,课程地址:网易云课堂

二、正文

2.1 问题类型:

事实表设计:累积事实表,是否需要拆分成不同的事实表。

2.2 问题描述

**关键词:**业务系统中的累积事实表,数仓中是否需要拆分成不同的事实表;

详情:
胖哥,你好,想问下如果业务系统的表是一张累积事实表(交易可能有多个过程,加入购物车、下单、支付、评论,但是业务系统是一张大表),在数仓的时候需要将其拆分成多张事务事实表吗?

2.3 胖哥观点

关键词:需要;
详情
学员 2019/2/20 14:33:40
目前是将其拆分
便于统计,但是发现因为很多维度都是相同的,除了存储多些,其他到时没有影响
胖子哥 2019/2/20 14:34:26
这里面有一个判断标准:数仓是面向分析过程的,提供的是尽可能多的场景的覆盖。
学员 2019/2/20 14:34:40
好的
胖子哥 2019/2/20 14:34:41
这里面涉及另外一个问题,性能优化
学员 2019/2/20 14:34:58
分成多个事实表对于后面汇聚是容易的
胖子哥 2019/2/20 14:35:40
所以。1.最细粒度,必须拆分;2.从性能优化的视角,可以考虑做融合事实表(通常叫宽表);二者同时存在。
1.是基础,覆盖分析型的场景和需求;2.是特定目的的特定应用
学员 2019/2/20 14:37:23
我现在是单事实表和累积事实表并存,累积便于去进行漏斗这样汇聚
主要是时长漏斗

胖子哥 2019/2/20 14:37:45
可以。
好多时候,可以逆推,当你发现自己的设计不好用的时候,就是需要反思设计的时候。
学员 2019/2/20 15:10:47
可以
胖子哥 2019/2/20 15:11:08
得存档,否则过后就忘。
学员 2019/2/20 15:14:12
还有个问题,就是建事实表时,事实表除了维度ID,还会退化维度一些关键查询便于识别的属性,例如产品ID、产品名称,这种操作可行吗
胖子哥 2019/2/20 15:14:40
退化维度是合理设计得一部分。
没问题。

三、未完待续

本文是《***分布式数据仓库最佳实践***》视频课程的学员答疑实录,学员答疑过程中,针对共性问题和具有代表性的问题,分享在此,算是立此存照。课程大纲见:《分布式数据仓库最佳实践-目录篇》,课程地址:网易云课堂

posted on 2019-02-20 16:05 张子良 阅读(...) 评论(...) 编辑 收藏