设计和创建数据仓库
一、设计和创建数据仓库
1、对原始数据的分析
在foodmart2000.mdb文件中包含了商店日常经营业务数据,由24张表组成。该数据库的部分表如下所示
员工信息表:employee
员工所属部门信息表:department
职务信息表:position
仓库类型:wareHouse_class
具体仓库存储:warehouse
该数据库的结构设计图如下所示:
2、设计数据仓库逻辑模型
从业务数据出发设计数据仓库的结构,必须明确业务数据本身的结构。数据仓库的结构规范有星星型构和雪花型结构。该数据仓库的结构设计图如下:
在数据仓库的逻辑结构中,数据表分为了两类:一类是实时数据表存储数据仓库中的实际数据,另一类是纬度数据表用来存储数据仓库中的纬度数据,如关于时间、促销手段和产品等都是纬度表。
3、创建foodmartsaleDW数据仓库
数据仓库其实也是一种数据库也是像普通数据库一样创建。这里用SQLServer2005创建一个foodmartDW的数据库。创建数据仓库的物理结构也可以在ETL阶段进行。在这里就是采用ETL创建数据仓库物理表结构。
二、设计和使用ETL
数据仓库中的数据一般要经过"提取—转换—加载"等过程,这就是ETL过程。下面我们就来把数据库foodmart2000.mdb装载到数据仓库中。
1打开Business Integlligence Development Studio,新建项目,在商业智能项目模板中创建Integration Services项目,命名为foodmartETL。如图:
2选择"项目—SSIS导入和导出向导"弹出欢迎界面,单击"下一步"按钮。
3弹出"选择数据源"对话框。在"选择数据源"窗口的数据源下拉列表中选择Access数据源类型。单击"浏览"选择foodmart2000.mdb数据库。如下图设置:
4单击"下一步"按钮弹出"选择目标"对话框,这里选择"SQL Native Client"如下图所示。选择创建好的foodmartsaleDW数据仓库作为目标数据库。
5单击"下一步"按钮弹出"指定表复制或查询"对话框。选择第一个单选按钮。图如下:
6单击"下一步"按钮弹出"选择源表和源视图"对话框。按照之前数据仓库的设计这里选择time_by_day、promotion、product、product_class、customer、store和store_fact_1988作为输出表。如下图
7单击"下一步"按钮。系统列举前面的操作,并提示以"package.dtsx"为文件名保存在项目文件夹下。单击"完成"按钮。
控制流
数据流
8在项目中展开SSIS包,将package.dtsx设为启动项。
9单击"运行"按钮。数据流和控制流有对象在活动。这是把foodmart200.mdb按规则装载到数据仓库的过程。
10数据装载完成后。打开SQL Server 2005的foofmartsaleDW数据库就发现已经按设计建好了数据仓库。刷新数据库就有表存在。