码迷,mamicode.com
首页 > 其他好文 > 详细

Qlikvew模型

时间:2016-04-06 23:25:19      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:

经常看到有人对qlikview的model的疑问或者一些组合键或者成环的一些问题,所以下面就探讨一下qlikview建模。

业务背景:有3张事实表分别为采购表、库存表、销售表,4张维度表分别为日期、产品、供应商、客户,我们现在需要搭建模型。

初始模型:直接将所有的数据表load至qlikview,字段内容就不做解释了,都非常简单,如下图:

技术分享

这个时候就产生了$syn键,也称组合键,这个字段名称相同就自动关联是qlikview的特性,这里就不做太多其他解释,那么这个模型是可以可以被优化的,当然了这个模型不优化也是可以的,但是不是很好的习惯或者说对性能或者其他方面有些影响,所以在这里都不做探讨是不是应该被优化,我只是建议优化,所以下面就探讨如何优化。

优化的重点还是在组合键,我们从模型中看到$syn table中的公用键是产品ID和日期ID,所以我们要优化的就是将$syn table优化为Linktable(这里不对linktable做太多解释),所以我们需要把每张表中的产品ID和日期ID抽象为一个key,即如下:

技术分享

因为事实表中的产品ID和日期ID都被抽象了,所以这个时候事实表是无法关联日期表和产品表的,下面就开始构造Linktable,代码如下:

技术分享

这里大概解释一下这些代码的思路,构造linktable的目的就是不让两张或者以上的表公用两个以上的字段,避免$syn table,然后每个 "日期ID&产品ID"这个key与事实表关联,原本每个事实表中的日期ID和产品ID只和维度表关联,如果有更多的公用key都可以按照这种方法处理,优化之后的模型如下图:

技术分享

结构非常清晰,方便后期扩展等,当然也有其他方法可以处理,比如Join事实表等,但是不是一个很好的做法,如有不妥之处,还望大家给出宝贵的意见,谢谢!

Qlikvew模型

标签:

原文地址:http://www.cnblogs.com/qjxiaopang/p/5361546.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!