初学BI,建表还请大牛指点。

siegebaoniu 2011-07-18 10:28:13
看了数据仓库的书,有点云里雾里,最好还是拿数据来实践一下。

于是,借了公司的一张表自己弄着操作一下。

大家看我表建的有没有问题,我初学者,请多指教。

事实表:


时间维度表:


商品维度表:


门店维度表:


这样对么?感觉事实表的数据很乱,维度表里的数据大量重复。
...全文
142 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
idonot 2011-07-19
  • 打赏
  • 举报
回复
用代理主键还是用业务建,这个看情况。用代理主键的话,ETL过程会复杂点,而且代理主键一般都是用自动增长的int,在ETL的时候容易出现一些问题,所以最好建立一个代理主键与业务键相对应的表,以便当业务键发生改变的时候,更新事实表中的外键。但是使用代理主键查询性能会好一点,对于业务键经常发生变动的情况,处理起来容易一些。使用业务键做外键,比较方便一点,ETL过程简单一点,一般情况下可以使用。
liangyong1107 2011-07-19
  • 打赏
  • 举报
回复
时间维度 的主键最好以日期类型为标准。因为事实表中的外键大部分都是日期为业务发生时间。
时间维度表
time_key y m d
2010-5-4 2010 5 4
2010-5-5 2010 5 5
2010-5-5 2010 5 6

事实表:
time_key
2010-5-5 等之类的。。
siegebaoniu 2011-07-19
  • 打赏
  • 举报
回复
谢谢
[Quote=引用 1 楼 liangyong1107 的回复:]
时间维度 的主键最好以日期类型为标准。因为事实表中的外键大部分都是日期为业务发生时间。
时间维度表
time_key y m d
2010-5-4 2010 5 4
2010-5-5 2010 5 5
2010-5-5 2010 5 6

事实表:
time_key
2010-5-5 等之类的。。
[/Quote]

7,394

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧