本篇文章是Integration Services系列的第一篇,详细内容请参考原文。
Integration Services是一种在SQL Server中最受欢迎的子系统。允许你在各种数据源之间提取、转换和加载(ETL)数据,以任何你能想到的编程方式更改数据。
你可以用SSIS做下面操作:
->执行ETL(提取、转换、加载)操作
->传输数据
->复制数据库对象
->执行FTP操作
->处理文件
"我之前从来没用过SSIS…"
你确定你从来没有使用过?是否对下面界面感到熟悉
图1.1 SQL Server导入和导出向导
这是来自SQL Server导入和导出向导的截图。如果你使用此向导,你就是使用SSIS。一个选项是“保存SSIS包”复选框。默认情况下是没有勾选的,大多数人会轻易的点击下一步。但是如果你勾选保存SSIS包,你可以在以后来查看。
这个界面怎样?
图1.2 维护计划任务
这是SSMS的维护计划设计器。猜出什么了吗?维护计划也是SSIS包。你可以用SSIS做很多事,但是首先学习下简短的历史。
SSIS仅仅是DTS 2.0?
SSIS不是数据转换服务(DTS)的新版本。它是DTS的一个替换,它是一个全新的应用程序——新建立,而不是移植或迁移。这意味着升级DTS包到SSIS比看起来要难。
SSIS是什么
SSIS是用于执行数据集成,协助数据库管理,并促进商业智能。数据集成主要包括从A点到B点的移动数据,或者从某些来源到某些目标。源和目标可以是数据库,也可以不是数据库。SSIS可以连接许多数据源和数据目标:
->OLE DB
->ADO
->ADO.Net
->Excel
->Flat File
除了内置连接,SSIS还允许开发者创建自定义连接管理器
数据库管理
有时你只需要传输数据。导入和导出向导可以在Excel和SQL Server数据表,平面文件和ODBC连接之间迁移数据。它允许数据传输指定表复制或查询,给DBA提供了合并或转换数据的扩展能力。
一个很好的例子是创建或刷新一个测试数据库。生产数据经常用来验证变化。SQL Server导入和导出向导使用SSIS将数据从源移动到目标。
商业智能
在商业智能(BI)数据集成工具的主要用途是提取、转换和加载(ETL)操作。SSIS是用来执行ETL。SSIS的核心是数据流任务,它的设计理念形象地描述为"流水线结构",数据流任务是一个强大的且灵活的数据泵。
SSIS lends itself to design patterns. One popular design pattern for SSIS loads is the Incremental Load, where only new or updated data is moved from the source to the destination table.
在SSIS数据流中,可以用下面模式实现:
图1.3 SSIS加载设计模式
职责分离
不同于数据转换服务(DTS)和其他数据集成产品,SSIS分离工作流和数据流操作。控制流以一种同步的方式管理工作流,在移动到下一步之前按顺序完成每个任务:
图1.4 SSIS控制流
并发是通过在控制流创建多个执行路径完成的。数据流获取、转换,然后加载数据"块",一个时间一个缓冲区。在数据流操作期间的任何时间,可以有行不读入数据流管道,行被数据流组件转化、处理并加载到目标:
图1.5 SSIS数据流
创建Integration Services 项目
点击开始->所有程序->Microsoft SQL Server 2008 R2->SQL Server Business Intelligence Development Studio
图1.6 打开Business Intelligence Development Studio
BIDS是Microsoft Visual Studio的一个版本,是微软的集成开发环境(IDE)。许多开发平台和语言共享Visual Studio IDE。例如包括Microsoft Visual C#和Microsoft Visual Basic。
一旦打开BIDS,通过文件->新建->项目,创建一个SSIS项目
当新建项目对话框打开,在左上角的项目类型选择"商业智能项目"。正如前面提到,VS/BIDS支持多种语言和开发平台。项目类型包含已经安装的语言和平台列表。如果你安装了其他的平台和语言,他们会添加到这个列表中。
一旦你选择一个项目类型,可用的项目类型模板会出现在模板列表。选择"Integration Services 项目"
在新建项目对话框的下半部分,名称键入"My_First_SSIS_Project"。你可以接受默认的文件存放位置,或者点击浏览选择另一个路径存放SSIS项目。
图1.7 新建项目
当你键入项目名称后,解决方案名称复制了项目名称。你可以修改解决方案名称为不同的名称。一旦你键入解决方案名称,项目名称和解决方案名称之间的"链接"就被切断。
"创建解决方案的目录"复选框,在项目文件夹上添加一个文件夹,包含Visual Studio artifacts related to the Visual Studio solution,解决方案文件,包含有关解决方案中的项目信息。
如果你有安装和配置一个源控制(或版本控制)客户端,你可以选择将解决方案添加到源代码控制当你创建它通过选中“添加到源代码管理”复选框。
当你点击确定,包含My_First_SSIS_Project项目的解决方案就会被创建。
总结
在这一篇我们介绍了SSIS,并概述其体系结构。在之后的文章中,我们将深入学习SSIS。