一步一步学习SQL Server BI
一步一步学习sqlserver BI—-数据仓库设计
因为项目还没有真正开始,但是接触BI已有半年多,手痒,这几天准备搞一个简化版本的BI项目.一方面给刚BI入门的朋友一个参考,另外一方面也为自己的将要开始的项目做个准备,让自己能够考虑到一些项目的细节.同时也希望对BI有研究的朋友提供一些建议和经验。因为我们的这个案例是采用微软的sqlserver2005的BI平台开发的,所以这里先贴一张WebCast里面截来的图,这张图主要反映了采用
sqlserver2005的BI项目的架构。
好了,咱们开始吧.我说的这个项目需求很简单,因为是简化版本的么.这是一个游戏中使用到的物品的销售分析软件。里面包括几个概念,游戏,销售部门,物品,交易金额,交易笔数,发布单数等。我们要做的事情就是按游戏,按部门,按物品来实现对交易金额,笔数等的数据交叉分析。
在我们这个系统里面,我们的数据颗粒度是天。好了,既然是简化版,我们也就不用那么罗嗦,什么需求分析,分析设计都省了吧,下面直接进入数据库设计.
我们的数据库一共包括四张维度表(部门维度,游戏维度,物品维度,时间维度),一张事实表(游戏交易数据事实表)。
部门维度表
sql自学难吗游戏维度表物品维度表时间维度表
交易数据事实表
由于我们的这个案例比较简单,所以维度与事实表之间的关系也比较简单,是一个简单的星型架构.
这一节我们就先写到这里,下一节我将会详细的写这个项目的ETL部分。
一步一步学习sqlserver BI——ETL设计
这节我们主要讲讲我的游戏交易数据分析项目的ETL(数据抽取、加载、转换)具体是怎么做的.
先来讲下源系统吧,因为我们的交易主站的服务器不是架在公司的,因此不能直接从源系统直接抽取数据了。事实上我们已经存在一个简单的数据分析系统了,只不过这个是以前人家做的,没有采用sqlserver2005的BI平台来做,而是直接写winform程序来弄的。原来的数据抽取是主站那边提供导出的excel文件过来,然后到我们这边,导入到我们的分析库中去。
好了,为了简便,事实上我只是在做一个demo,为以后项目做准备,所以我们抽取数据直接是从上面说的已经存在分析库中抽的,因为数据结构比较相近,所以ETL过程还是比较简单的.
先看看游戏维度表吧:
首先,我们来新建一个Integration Services项目。
接着,新建一个ImportDimGamePackage.dtsx的SSIS包。
拖放一个数据流任务到控制流面板上(如图)
双击数据流任务,来到数据流面板
接着我们拖动OLEDB源到数据流面板上,并且双击编辑它,新建一个连接和选择要抽取数据的源数据表.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。