SQL Server 2008集成服务新特性

日期: 2008-10-21 作者:Mark Kromer翻译:April 来源:TechTarget中国 英文

SQL Server 2008中的集成服务发布了三大新特性以提高性能并方便管理员、开发员的轻松使用。在这一技巧中,SQL Server商业智能专家Mark Kromer和我们讨论了数据集成和脚本的提高能力之间是如何产生分歧的。   SQL Server在过去若干年中已经变得很大并包含了所有的数据库包,尤其是加上商业智能的一些特性:Analysis Services、DTS以及现在的SQL Server集成服务。有了SQL Server 2008,你可以获得现存的开发工具(BIDS),管理员工具(SSIS)、性能工具、数据仓储系统、商业智能、创建报表服务等等。

  对于那些每天的任务就是管理一种……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

SQL Server 2008中的集成服务发布了三大新特性以提高性能并方便管理员、开发员的轻松使用。在这一技巧中,SQL Server商业智能专家Mark Kromer和我们讨论了数据集成和脚本的提高能力之间是如何产生分歧的。

  SQL Server在过去若干年中已经变得很大并包含了所有的数据库包,尤其是加上商业智能的一些特性:Analysis Services、DTS以及现在的SQL Server集成服务。有了SQL Server 2008,你可以获得现存的开发工具(BIDS),管理员工具(SSIS)、性能工具、数据仓储系统、商业智能、创建报表服务等等。

  对于那些每天的任务就是管理一种SQL Server环境人来说这是一个好消息,也是一个坏消息。在本篇技巧中,我将着重讨论SQL Server 2008承载的数据集成工具、SQL Server集成服务(SSIS)以及三种新特性。这些SSIS 2008中的新特性就是脚本改良、数据归档和数据流。在SSIS 2008 中还有一些地方也得到了改善,包括SQL Server 2008中的变更数据捕获器(CDC)和合并容量,这些我在这里就不进行详细阐述了。如果你想了解更多关于变更数据捕获器的内容,请查阅我以前关于《如何变更数据捕获器特性提高商业智能报表准确性》 这一技巧文章。

  我们从SSIS 2008中新的C# scripting capabilities说起。在SQL Server 2005版本中的SSIS中,脚本任务仅仅是作为SSIS中VSA组成件的一部分能在VB中使用。一些客户提出了要发展C#成为一种选项任务脚本语言。这种要求提出后,微软现在就通过将VSTA与SSIS完全合并发展成一种脚本任务(如图1)。现在你可以全部访问.NET.NET Framework,而且可以通过脚本任务执行更多、更复杂的任务。如果你在控制流(Control Flow)设计层面执行脚本任务,系统将提示你选择 Visual C#或者VB这两种语言中的一种。现在SSIS程序员和管理员可以通过下面的方法摆脱VB:

'Set new internal variable to DTS/SSIS package variable
Dim fromDate As Date = Me.Variables.FromDate
Do While fromDate <= Me.Variables.ToDate
fromDate = DateAdd(DateInverval.Day, 1, fromDate) 
Loop
……对更新的C#参数
DateTime fromDate = this.Variables.FromDate; // From SSIS
Variable
While (fromDate <= this.Variables.ToDate) 
{
fromDate=fromDate.AddDays(1); 

}

  SSIS 2008中的新脚本任务为VSTA

  图1:SSIS 2008中的新脚本任务为VSTA,包括VB和Visual C#脚本。

  SSIS 2008最让人激动的新特性之一是数据归档任务。有了这一新特性,你能在其他的性能中对SQL Server数据进行抽样并创建盖数据归档查找模式、查找NULL以及复制数据。这是第一个微软发布的数据素质工具,它主要缺点就是在这时只对SQL Server这样的数据源起作用。

  数据归档有很多用途,包括分析输出量统计表、识别候选关键字,但是在这篇技巧中,我们重点讲述商业智能中的数据迁移。

  数据归档对将数据从一个SQL Server数据库迁移到另一个数据库这样一种耗时、单调乏味的工作来说很有帮助;对查找主要候选领域如地址、名称或者你的数据仓库的尺寸也有很大的帮助。

  今天市场上一些独立的ETL产品也包含同样的功能。在数据集成专家工具箱中也是必需品。微软的SSIS包括数据归档是件好事。但是你不要期待SSIS会在将来自动成为独立的ETL工具。它很可能还是一种附加在SQL Server上的工具,是SQL Server包的一部分价值所在。

  图2中你看到的是从数据库中收集数据样品的数据归档任务。当这项任务在SSIS中完成时,你就可以打开浏览器显示其结果。从包中输出的就是XML文档,最佳观察和弄清输出的方法就是打开浏览器。独立安装的、有集成服务并作为客户机工具的程序可以在Visual Studio外面访问浏览器。图2中的抽样输出就是列长度分布归档。

  在SSIS包中的抽样输出

   图2:在SSIS包中的抽样输出。(点击察看大图)

  接下来就是对现存功能的加强。微软对缓冲器和缓冲存储器进行了改良,这样就很容易在SSIS过程中很容易就获得性能的增长,就像是“树上挂得很低的水果”。如果你对2005中的SSIS很熟悉,并且还在使用过数据流的很多构件、复杂的数据包,那毫无疑问你在运输数据时性能已经在退化了。你很可能就是你不得不选择平行的传递途径。所以,2008 SSIS中你不用担心这些问题,并且你还可以排除原来的设计骗局。

  在以前的SSIS中我见过的最多的瓶颈就发生在它执行很多row-level级别的操作或模块构成如聚集、分类;或者在数据需要复制到新的缓冲区中而不是将同样的缓冲区插传递到下一次迁移过程。在SSIS 2008中,你能够使用缓存变换通过数据流保存数据。例如,不在对SSIS每次都发出请求的情况下,在上述情况中你可就以在多重查找中再次利用缓冲器。图3表示对我的数据源进行屏幕设置。

  创建一种新的缓存管理器并对它命名

  图3:创建一种新的缓存管理器并对它命名。(点击察看大图)

  现在在缓存器上你要存储的列里设置元数据

  图4:现在在缓存器上你要存储的列里设置元数据。(点击查看大图)

  SQL Server 2008和SSIS 2008这些版本对微软来说变化不是很大。而是他们在SQL Server 2005 上的突破和延伸,并不断将这种产品发展成为一种更加完整的企业版的、具有行业实力的数据库版本。微软更是在旧版Sybase/SQL Server 7.0基础上得到了进一步的发展,SQL Server还在提高,那些在数据仓储和商业智能领域中的企业将从这些不断增长的功能、轻松操作以及SSIS 2008所具有的数据集成性能中受益。SSIS 2008还不是一种独立的ETL选项因为它还没有包括一些重要的功能,如在当今市场上管理元数据或管理不同种类的数据源高速连接器。

翻译

April
April

相关推荐