SqlServer 2012 创建数据仓库

开始实战!很简单的。没有代码,没有代码,没有代码!

对OnRet数据库应用SSIS,创建ETL包,设计开发对应的数据仓库

hive版本请看:点击这里

实验环境

OS:win7
SqlServer2012
SQL Server Data Tools(SSDT) (SqlServer附带)
SSIS(SSDT的项目,是Microsoft SQL Server Integration Services的简称,是生成高性能数据集成解决方案(包括数据仓库的提取、转换和加载 (ETL) 包)的平台)。

数据来源

OnRet数据库:https://pan.baidu.com/s/1VFCbn9Dip3cRD4tHCBD-_Q
提取码:whn7

下载后,打开sqlserver2012(我的版本)对象资源管理器SSMS
在这里插入图片描述

OnRet 数据库为一个在线商城项目的数据库。表格为
在这里插入图片描述
【请忽略我的标记为1的表格】
这样就完成了数据库的导入了,教学较为简单,只用这一个数据库作为数据仓库的来源。

设计、创建数据仓库DW

选定一个感兴趣的主题,设计多维模型。例如:以商品的销售额和销售量为主题设计的星型模型。

在这里插入图片描述

需要五个维表:Dates(时间),Locates(地点),Products(产品),Education(教育程度),Age(年龄)
一个事实表:sales(销售)

在SqlServer中创建数据库SDW存放数据仓库。(这种方法较为简单)
创建以上几个表格
在这里插入图片描述

创建Integration Services项目

打开SSDT
在这里插入图片描述
SQL Server Data Tools(SSDT) 曾叫做Business Intelligence Development Studio(BIDS),是开发人员所需要的开发环境。它为SSIS,SSAS,SSRS的商业智能项目提供了可视的设计界面。从SQL Server 2014版本开始,该环境不再包含在SQL Server的安装包内,需要另行安装。

此外SSIS简易教程请看:点击这里
或者查找官网:https://docs.microsoft.com/en-us/sql/integration-services/sql-server-integration-services?view=sql-server-ver15

并添加OLEDB连接管理器连接OnRet和SDW数据库
在这里插入图片描述

在这里插入图片描述
最好使用sa账号,避免出错。

同样的,对于输出数据库也添加连接
在这里插入图片描述
ETL过程就是从OnRet数据库中抽取数据,转换,统一后存储到SDW中

开始ETL

时间维表

点击SSIS右键创建SSIS包,设置数据流任务,添加OLEDB源,设置为OnRet数据库中的表。抽取Date数据,将表设置为Sales,并在列中添加日期。

第一步,创建数据流任务

在这里插入图片描述

第二步,设计数据流任务,双击数据流任务,转到数据流设计页面:增加数据源(把对应数据源的控件拖过来),双击进入编辑页面

在这里插入图片描述
在这里插入图片描述

订单中的日期即为对应的时间,需要将其抽取出来,划分层次。

在这里插入图片描述
第三步 派生列

因为只有一个列(属性),我们希望时间是多层次的,所以添加派生列,并如图配置。

在这里插入图片描述
双击组件进入编辑,添加对应的维成员。
在这里插入图片描述
第五步、 添加排序,去除时间维表的重复行

为了时间的唯一性,添加排序,去除重复行(多个订单可能是同一天的)
同样的方法,把排序组件拖过来,双击编辑

在这里插入图片描述

第六步 输出到目标仓库维表中
添加OLEDB目标(拖过来),设置输出表为SDW的Dates表,并设置映射,部署之后就能得到结果。
在这里插入图片描述
映射中一一对应。
在这里插入图片描述
输入是数据来源,目标列是SDW中Dates维表的属性列,他们设置的数据类型必须一致。

第七步 点击部署,即可。

地理维表

和上述过程基本一样。
需要确定地理维度的来源:选取OnRet数据库的Area表。

第一步 创建SSIS包,设置数据流任务,添加OLEDB源
在这里插入图片描述
双击数据流任务进入数据流设计页面,新增数据源(还是原来的设置)
在这里插入图片描述
添加OLEDB源后,选取OnRet数据库的Area表,勾选除编号外所有可用外部列。
在这里插入图片描述

因为这里已经包含了地区维层次,不必增加新成员,所以不需要派生。

添加OLEDB目标,设置输出表为SDW的Locates表,并设置映射,部署之后就能得到结果。
在这里插入图片描述

在这里插入图片描述

部署即可。

其他的维表和事实表操作请看下一个数据仓库与数据挖掘 4(下)

参考

https://docs.microsoft.com/en-us/sql/integration-services/sql-server-integration-services?view=sql-server-ver15
https://baike.baidu.com/item/SSIS/5351898?fr=aladdin

Logo

永洪科技,致力于打造全球领先的数据技术厂商,具备从数据应用方案咨询、BI、AIGC智能分析、数字孪生、数据资产、数据治理、数据实施的端到端大数据价值服务能力。

更多推荐