SQL Server 2008最佳特性分析

日期: 2010-03-11 作者:Hilary Cotter翻译:曾少宁 来源:TechTarget中国 英文

SQL Server 2008 有61个新特性 —— 甚至还不包括缺陷修复和性能改进。在这里详细地说明每一个特性很困难,所以为了节省篇幅,有一些特性在这里不会讨论。   增强的数据引擎   数据引擎进行了重要的改进。SQL Server 2008 让人眼前一亮的功能是合并语句,它可以合并2个数据集。

例如,如果有一个数据集包含了我想要插入到一个表的记录行,我可以使用合并语句来插入这些目标表中所没有的记录。然后就可以修改目标表中已存在的记录(见如下代码)。   MERGE Production.ProductInventory AS target   USING&nb……

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

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

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

SQL Server 2008 有61个新特性 —— 甚至还不包括缺陷修复和性能改进。在这里详细地说明每一个特性很困难,所以为了节省篇幅,有一些特性在这里不会讨论。

  增强的数据引擎

  数据引擎进行了重要的改进。SQL Server 2008 让人眼前一亮的功能是合并语句,它可以合并2个数据集。例如,如果有一个数据集包含了我想要插入到一个表的记录行,我可以使用合并语句来插入这些目标表中所没有的记录。然后就可以修改目标表中已存在的记录(见如下代码)。

  MERGE Production.ProductInventory AS target
  USING (SELECT ProductID, SUM(OrderQty) FROM Sales.SalesOrderDetail AS sod
  JOIN Sales.SalesOrderHeader AS soh
  ON sod.SalesOrderID = soh.SalesOrderID
  AND soh.OrderDate = '2004-05-01 00:00:00.000'
  GROUP BY ProductID) AS source (ProductID, OrderQty)
  ON (target.ProductID = source.ProductID)
  WHEN MATCHED
  THEN UPDATE SET target.Quantity = target.Quantity - source.OrderQty,
  target.ModifiedDate = GETDATE();

  合并语句可以实现很高的性能和扩展性。例如,合并语句能够删除目标表中既存在于源表也存在于目标表的记录行(见如下代码)。

  MERGE Production.ProductInventory AS target
  USING (SELECT ProductID, SUM(OrderQty) FROM Sales.SalesOrderDetail AS sod
  JOIN Sales.SalesOrderHeader AS soh
  ON sod.SalesOrderID = soh.SalesOrderID
  AND soh.OrderDate = '2004-03-01 00:00:00.000'
  GROUP BY ProductID) AS source (ProductID, OrderQty)
  ON (target.ProductID = source.ProductID)
  WHEN MATCHED THEN DELETE;

  支持原生压缩

  SQL Server 2008 Enterprise Edition 支持数据库的原生压缩和事务日志备份。SQL Server 数据库和事务日志备份在很多情况下是很有用的,如:

  •   存储空间比较紧张时。
  •   备份时需要最小化 I/O 写操作。
  •   在网络中拷贝一个数据库或事务日志备份时减少网络带宽。

  这些数据页和行压缩功能也可以减少存储需求。

  改进的Reporting Services

  重新设计的报表服务特性改进了Report Builder 和Visual Studio 或 Business Intelligence Development Studio (BIDS) 中的报表模板。我相信这些改进也是很健壮的,所以当你开始使用Visual Studio 2008 创建报表时,你将爱不释手。总的来说,Reporting Services 能给开发人员更多的功能和可扩展性,同时它也可以用来生成报表。Microsoft 增加了几个新的报表类型:

  •   Tablix:组合一个列表、表格和矩阵报表 (图1)。

  •   新的图和表:增加了新折图表类型,如坐标轴和公式,以及可以更好地控制属性的向导。
  •   仪表:可以用来显示重要的指标仪表,并嵌入仪表控制到单独的一个报表中或其它报表类型。

  我们可以在Microsoft Word 中渲染报表,也可以在 .html、.xml、.csv、.tiff、.pdf 和 Excel 中渲染。SQL Server 2008 支持 Excel 中嵌套数据区域和子报表。

  之前版本的 Reporting Services 是设计支持大规划并发用户的;然而,Microsoft 并不支持生成非常大的报表,如超过1000页的报表。Reporting Services 2008 不再依赖于Internet Information Services (IIS),所以它能够在渲染大型多页报表时扩展支持更大数量的并发用户。DBA可以定义 Reporting Services 在它运行的机器上所能使用的最大内存数。

  改进的Analysis Services

  SQL Server Analysis Services 2008 中大多数令人兴奋的新特性都是针对Design Wizards 的改进。Cube and Dimension 向导内置了更多的智能操作,这使它们能够自动建议大小和层次,并给出最佳实践的警告。这些警告可以帮助我们设计高性能的Analysis Services 立方体。这些向导也更加合理,而创建一个立方体所需要的鼠标点击也更少。

  SQL Server Integration Services 节省

  SQL Server 2008 Integration Services (SSIS) 是作为SQL Server 2008 的一个单独组件发布的。所以我们不再需要在相同的运行 Integration Services 的机器上安装 SQL。在一台专用的机器上运行 SSIS 可以提高性能和消除购买多个授权的需要。

  为了优化性能,下面的组件也进行了重新设计:

  •   查找转换得到了增强。
  •   ADO.net 是首先的访问数据方法;SSIS 2008 优化了ADO.net 的使用。之前版本是优化了ole-db 和 ODBC 的使用。
  •   SSIS 引擎的管道改进优化了可扩展性,并以更少的资源访问实现更好的性能。
  •   修改的数据捕获和检测特性改进了增量刷新的性能。

  例如,数据分析可以用来检查数据质量,以检查数据的的一致性。这对于检测意料之外的格式的数据是很有用。例如,我们可能预期数据包含St.、Street、Dr.、Drive、Ln.、Lane —— 但没有Rd. 和 Road。数据分析器显示这些数据是不一致性的,所以我们可以计算出现次数并确定它是否有拼写错误、数据项错误或合法但不是预期值。

翻译

曾少宁
曾少宁

TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。

相关推荐