实验一创建一个简单 ETL 包文档格式.docx

上传人:b****5 文档编号:19853757 上传时间:2023-01-11 格式:DOCX 页数:17 大小:645.39KB
下载 相关 举报
实验一创建一个简单 ETL 包文档格式.docx_第1页
第1页 / 共17页
实验一创建一个简单 ETL 包文档格式.docx_第2页
第2页 / 共17页
实验一创建一个简单 ETL 包文档格式.docx_第3页
第3页 / 共17页
实验一创建一个简单 ETL 包文档格式.docx_第4页
第4页 / 共17页
实验一创建一个简单 ETL 包文档格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

实验一创建一个简单 ETL 包文档格式.docx

《实验一创建一个简单 ETL 包文档格式.docx》由会员分享,可在线阅读,更多相关《实验一创建一个简单 ETL 包文档格式.docx(17页珍藏版)》请在冰豆网上搜索。

实验一创建一个简单 ETL 包文档格式.docx

5.单击“确定”。

默认情况下,将创建一个名为Package.dtsx的空包,并将该包添加到项目中。

(如图1.1)

图1.1

6.在解决方案资源管理器工具栏上,右键单击Package.dtsx,再单击“重命名”,将默认包重命名为Lesson1.dtsx。

7.(可选)在系统提示重命名包对象时,单击“是”。

二.添加和配置平面文件连接管理器

在刚创建的包中添加一个平面文件连接管理器。

通过平面文件连接管理器,包可从平面文件中提取数据。

右键单击“连接管理器”区域中的任意位置,再单击“新建平面文件连接”。

(如图2.1)

图2.1

1.在“平面文件连接管理器编辑器”对话框的“连接管理器名称”字段中,键入SampleFlatFileSourceData。

2.单击“浏览”。

3.在“打开”对话框中,浏览并找到要导入的文本文件。

4.在“平面文件连接管理器编辑器”对话框中,单击“高级”。

5.在“属性”窗格中,进行如下更改:

1将Column0名称属性更改为AverageRate(如图2.2),其他列名称属性的修改方法与此相同。

图2.2

2将Column1名称属性更改为CurrencyID。

3将Column2名称属性更改为CurrencyDate。

4将Column3名称属性更改为EndOfDayRate。

7.在“平面文件连接管理器编辑器”对话框中,单击“建议类型”。

8.在“属性”窗格中,将列CurrencyID的数据类型从字符串类型[DT_STR]更改为Unicode字符串类型[DT_WSTR]。

9.在“属性”窗格中,将列CurrencyDate的数据类型从日期类型[DT_DATE]更改为数据库时间戳类型[DT_DBTIMESTAMP]。

10.单击“确定”。

(如图2.3)

图2.3

三.添加和配置OLEDB连接管理器

1.右键单击连接管理器区域中的任意位置,再单击“新建OLEDB连接”。

2.在“配置OLEDB连接管理器”对话框中,单击“新建”。

3.在“服务器名称”中,输入localhost。

(如图3.1)

图3.1

4.在“登录到服务器”组中,确认选择了“使用Windows身份验证”。

(如图3.2)

图3.2

5.在“连接到数据库”组的“选择或输入数据库名称”框中,键入或选择AdventureWorksDW。

6.单击“测试连接”,验证指定的连接设置是否有效。

7.连续两次单击“确定”。

8.在“配置OLEDB连接管理器”对话框的“数据连接”窗格中,确认选择了localhost.AdventureWorksDW。

9.单击“确定”。

(如图3.3)

图3.3

四.添加一个数据流任务

1.单击“控制流”选项卡。

(如图4.1)

图4.1

2.在“工具箱”中,展开“控制流项”,并将一个数据流任务拖到“控制流”选项卡的设计图面上。

(如图4.2.1和图4.2.2)

图4.2.1图4.2.2

3.在“控制流”设计图面中,右键单击新添加的数据流任务,再单击“重命名”,将名称更改为ExtractSampleCurrencyData。

五.添加平面文件源组件

1.打开“数据流”设计器,方法是双击ExtractSampleCurrencyData数据流任务或单击“数据流”选项卡。

2.在“工具箱”中,展开“数据流源”,然后将“平面文件源”拖动到“数据流”选项卡的设计图面上。

3.在“数据流”设计图面上,右键单击新添加的“平面文件源”,单击“重命名”,然后将该名称更改为ExtractSampleCurrencyData。

4.右键单击此平面文件源,打开“平面文件源编辑器”对话框。

5.在“平面文件连接管理器”框中,键入或选择SampleFlatFileData。

6.单击“列”并验证列名是否正确。

(如图5.1)

图5.1

7.单击“确定”。

六.添加并配置CurrencyKey查找转换

1.在“工具箱”中,展开“数据流转换”,然后将“查找”拖动到“数据流”选项卡的设计图面上。

2.单击ExtractSampleCurrencyData平面文件源,并将绿色箭头拖动到新添加的“查找”转换中,以连接这两个组件。

(如图6.1.1和图6.1.2和图6.1.3)

图6.1.1图6.1.2图6.1.3

3.在“数据流”设计图面上,右键单击新添加的“查找”转换,单击“重命名”,然后将该名称更改为LookupCurrencyKey。

4.双击LookupCurrencyKey转换。

5.在“查找转换编辑器”对话框的“OLEDB连接管理器”框中,确保显示localhost.AdventureWorksDW。

6.在“使用表或视图”框中,键入或选择[dbo].[DimCurrency]。

7.单击“列”选项卡。

(如图6.2)

图6.2

8.在“可用输入列”面板中,将CurrencyID拖放到“可用查找列”面板的CurrencyAlternateKey上。

(如图6.3)

图6.3

9.选择CurrencyKey。

(如图6.4)

图6.4

11.在“工具箱”中,将“查找”拖动到“数据流”设计图面上。

(步骤同图6.1.1和图6.1.2)

12.单LookupCurrencyKey转换,并将绿色箭头拖动到新添加的“查找”转换中,以连接这两个组件。

13.在“数据流”设计图面上,右键单击新添加的“查找”转换,单击“重命名”,然后将该名称更改为LookupDateKey。

14.双击LookupDateKey转换。

15.在“查找转换编辑器”对话框的“OLEDB连接管理器”框中,确保显示了localhost.AdventureWorksDW。

16.在“使用表或视图”框中,键入或选择[dbo].[DimTime]。

17.单击“列”选项卡。

18.在“可用输入列”面板中,将CurrencyDate拖放到“可用查找列”面板的FullDateAlternateKey上。

19.选择TimeKey。

20.单击“确定”。

(如图6.5)

图6.5

七.添加和配置示例OLEDB目标

1.在“工具箱”中,展开“数据流目标”,并将“OLEDB目标”拖到“数据流”选项卡的设计图面上。

2.单击“查找日期键”转换,将绿色箭头拖到新添加的“OLEDB目标”上,以便将两个组件连接在一起。

3.在“数据流”设计图面上,右键单击新添加的“OLEDB目标”组件,单击“重命名”,然后将名称更改为SampleOLEDBDestination。

4.双击SampleOLEDBDestination。

5.在“OLEDB目标编辑器”对话框中,确保已在“OLEDB连接管理器”框中选中localhost.AdventureWorksDW。

6.在“表或视图的名称”框中,键入或选择[dbo].[FactCurrencyRate]。

7.单击“映射”。

(如图7.1)

图7.1

8.确保输入列已正确映射到目标列。

(如图7.2)

图7.2

包现在已经完成了!

该对包进行测试了。

八.运行Lesson1教程包

1.在“调试”菜单上,单击“启动调试”。

包将开始运行(如图8.1.2和图8.1.3),结果有1097个行被成功添加到AdventureWorksDW中的FactCurrency事实数据表中。

图8.1.2图8.1.3

2.当包运行完毕后,在“调试”菜单上,单击“停止调试”。

实验总结:

在本实验中,我们创建了一个新的MicrosoftSQLServer2005IntegrationServices(SSIS)项目,配置了包连接到源数据和目标数据所需的连接管理器,添加了一个数据流,该数据流从平面文件源提取数据,对数据执行必要的查找转换,并为目标配置数据。

从Excel文件提取数据

下面,将创建一个简单ETL包,该包可以从Excel文件提取数据,转换该数据,然后将该数据加载到MicrosoftSQLServer2005中新建的数据库中。

3.在“新建项目”对话框中,从“项目类型”窗格中选择“商业智能项目”。

从“VisualStudio已安装的模板”类别中选择“AnalysisServices项目”。

在“名称”文本框中键入“SSISExcel”作为项目名称,然后单击“确定”。

(如图1)

图1

4.在“解决方案资源管理器”窗口中,右击“SSIS包”文件夹,从快捷菜单中选择“SSIS导入导出向导”命令。

5.在“SQLServer导入和导出向导”的“选择数据源”页上,在“数据源”选项中选择“MicrosoftExcel”,在“文件名”选项中键入将要导入SQLServer的Excel文件路径名,然后单击“下一步”。

(如图2)

图2

6.在“SQLServer导入和导出向导”的“选择目标”页上,因为本实验是将数据导入到SQLServer数据库中,故在“目标”选项中选择“SQLNativeClient”,然后单击“新建”按钮,在SQLServer中创建一个新的数据库作为目标数据库。

7.在弹出的“创建数据库”页上,在“名称”栏内将该数据库命名为Excel,其余选项保持默认设置,然后单击“确定”,回到“SQLServer导入和导出向导”的“选择目标”页上,再单击“下一步”。

8.在“SQLServer导入和导出向导”的“指定表复制或查询”页上,可以选择需要复制的是数据源的多个表和视图还是自定义的查询。

为了简便,可以选择“复制一个或多个表或视图得数据”,然后单击“下一步”。

9.在“SQLServer导入和导出向导”的“选择源表和源视图”页上,通过表前面的复选框,可以选择复制源数据库中的一个或多个表和视图。

(如图3)

图3

10.在上图中,可以在选择的表或视图的目标后面单击“编辑”按钮,更改SSIS默认生成的目标。

在“列映射”页面上,单击“确定”或“取消”按钮,可返回上一页面。

(如图4)

图4

11.在上图中,单击“编辑SQL(S)…”按钮,可以自己写“CreateTable”语句作为复制的目标表。

在“CreateTableSQL语句”页面上,单击“确定”或“取消”按钮,可返回上一页面。

12.从步骤12、步骤13返回到步骤11后,单击“下一步”。

在“SQLServer导入和导出向导”的“完成该向导”页上,系统会显示前述的操作列表以供确认,并提示会将包以“Package1.dtsx”作为文件名保存在项目文件夹下,而且不会立即执行。

确认无误后,单击“完成”。

(如图5)

图5

13.在“SQLServer导入和导出向导”的“正在执行操作…”页上,可以看到数据导入的执行情况。

(如图6)

图6

14.所有操作成功完成之后,显示“SQLServer导入和导出向导”的“执行成功”页面,在该页面上单击“关闭”即可。

15.导入操作完成之后,查看SSIS的工作界面。

在“连接资源管理器”中已经有了两个连接,DestinationConnectionOLEDB连接是导出的目标,即SQLServer的连接,SourceConnectionExcel连接是导入的数据源,即EmployeeData.xls文件的连接。

(如图7)

图7

16.“控制流”、“数据流”和“包资源管理器”中都有了相应的对象。

(如图8.1和图8.2和图8.3)

图8.1图8.2

图8.3

17.在“解决方案资源管理器”窗口下,右击“SSIS包”文件夹下的“Package1.dtsx”,从快捷菜单中选择“执行包”命令。

18.执行完毕后,切换到SQLServerManagementStudio,在“对象资源管理器”窗口中可以看到创建了一个SSISExcel数据库,库中有从EmployeeData.xls文件中导入的表和数据。

从Access数据库提取数据

下面,将创建一个简单ETL包,该包可以从Access数据库提取数据,转换该数据,然后将该数据加载到MicrosoftSQLServer2005中新建的数据库中。

在“名称”文本框中键入“SSISdemo”作为项目名称,然后单击“确定”。

4.在SSAS的工作界面下,可以看到关于新建的SSISdemo项目的各项内容。

5.在“解决方案资源管理器”窗口中,右击“SSIS包”文件夹,从快捷菜单中选择“SSIS导入导出向导”命令。

6.在“SQLServer导入和导出向导”的“选择数据源”页上,在“数据源”选项中选择“Access数据源”,在“文件名”选项中键入将要导入SQLServer的Access数据库路径名,然后单击“下一步”。

7.在“SQLServer导入和导出向导”的“选择目标”页上,因为本实验是将数据导入到SQLServer数据库中,故在“目标”选项中选择“SQLNativeClient”,然后单击“新建”按钮,在SQLServer中创建一个新的数据库作为目标数据库。

8.在弹出的“创建数据库”页上,将该数据库命名为SSISDemo,其余选项保持默认设置,然后单击“确定”,回到“SQLServer导入和导出向导”的“选择目标”页上,再单击“下一步”。

9.在“SQLServer导入和导出向导”的“指定表复制或查询”页上,可以选择需要复制的是数据源的多个表和视图还是自定义的查询。

10.在“SQLServer导入和导出向导”的“选择源表和源视图”页上,通过表前面的复选框,可以选择复制源数据库中的一个或多个表和视图。

11.在上图中,可以在选择的表或视图的目标后面单击“编辑”按钮,更改SSIS默认生成的目标。

12.在上图中,单击“编辑SQL(S)…”按钮,可以自己写“CreateTable”语句作为复制的目标表。

13.从步骤12、步骤13返回到步骤11后,单击“下一步”。

系统会显示前述的操作列表以供确认,并提示会将包以“Package1.dtsx”作为文件名保存在项目文件夹下,而且不会立即执行。

14.在“SQLServer导入和导出向导”的“正在执行操作…”页上,可以看到数据导入的执行情况。

在“连接资源管理器”中已经有了两个连接,DestinationConnectionOLEDB连接是导出的目标,即SQLServer的连接,SourceConnectionOLEDB连接是导入的数据源,即mysalary.mdb文件的连接。

(如图6.1和图6.2和图6.3)

图6.1图6.2

18.执行完毕后,切换到SQLServerManagementStudio,在“对象资源管理器”窗口中可以看到创建了一个SSISdemo数据库,库中有从mysalary.mdb文件中导入的表和数据。

SSIS(SQLServerIntegrationService)是SQLServer2005的一大亮点,相比于SQLServer2000的DTS,SSIS无论是在可视化的编辑环境还是API接口上都有了很大的进步。

但SSIS并不简单的是DTS的升级版本,现在的SSIS看起来越来越像一个专业的ETL工具。

SSIS拥有强大的ControlFlowFunction以及灵活多样并且高效的DataFlowTask(BulkInsertTask和ExecuteSQLTask等可以看成特殊的DataFlowTask)。

ControlFlow主要负责高层的逻辑拓扑,完成对各个DataFlowTask单元的串接,而DataFlowTask除了提供简单的SQL语句的执行,两个节点之间的数据传输外,还提供了Aggregation、DataConversion,Merge、Sort等操作,实现了面向多个源和目的端的复杂数据流的整合。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1