Transact-SQL的改进
SQL Server 2008通过几个关键的改进增强了Transact-SQL编程人员的开发体验。
·Table Value Parameters – 在许多客户的场景中,要传递一个表结构的值(行)的集合到服务器上的一个存储过程或函数中。这些值可能直接用于插入表或更新表,或者是用于更复杂的数据操作。值为表的参数为定义一个表类型和使应用程序创建、赋值和传递表结构的参数到存储过程和函数中提供了更简单的方式。
·对象相关性——对象相关性的改进通过新推出的种类查看和动态管理功能使能够可靠的找出对象间的相关性。相关性信息总是关于绑定架构和未绑定架构的对象的最新的信息。这个相关性会跟踪存储过程、表、视图、函数、触发器、用户定义的类型、XML schema集合和其他对象。
·日期/时间数据类型——SQL Server 2008推出了新的日期和时间数据类型:
(1) DATE——一个只包含日期的类型
(2) TIME——一个只包含时间的类型
(3) DATETIMEOFFSET – 一个可辨别时区的日期/时间类型
(4) DATETIME2 ——一个具有比现有的DATETIME类型更精确的秒和年范围的日期/时间类型
新的数据类型使应用程序可以有单独的日期和时间类型,同时为用户定义的时间值的精度提供较大的数据范围。
(四)偶尔连接系统
有了移动设备和活动式工作人员,偶尔连接成为了一种工作方式。SQL Server 2008推出了一个统一的同步平台,使得在应用程序、数据存储和数据类型之间达到一致性同步。在与Visual Studio 的合作下,SQL Server 2008使得可以通过ADO.NET中提供的新的同步服务和Visual Studio中的脱机设计器快速的创建偶尔连接系统。SQL Server 2008提供了支持,使得可以改变跟踪和使客户可以以最小的执行消耗进行功能强大的执行,以此来开发基于缓存的、基于同步的和基于通知的应用程序。
(五)不只是关系数据
应用程序正在结合使用越来越多的数据类型,而不仅仅是过去数据库所支持的那些。SQL Server 2008基于过去对非关系数据的强大支持,提供了新的数据类型使得开发人员和管理员可以有效的存储和管理非结构化数据,例如文档和图片。还增加了对管理高级地理数据的支持。除了新的数据类型,SQL Server 2008还提供了一系列对不同数据类型的服务,同时为数据平台提供了可靠性、安全性和易管理性。这篇白皮书的下一章节将介绍非关系数据存储的一些优点。
HIERARCHY ID
SQL Server 2008使数据库应用程序以比以前更有效的方式建立树结构。HierarchyId是一个新的系统类型,它可以存储一个层次树中显示的结点的值。这个新的类型提供了一个灵活的编程模型。它作为一个CLR用户定义的类型(UDT)来执行,它提供了几种用于创建和操作层次结点的有效的及有用的内置方法。
FILESTREAM数据
新的SQL Server 2008 FILESTREAM 数据类型使大型的二进制数据,像文档和图片等可以直接存储到一个NTFS文件系统中;文档和图片仍然是数据库的主要组成部分,并维护事务的一致性。
FILESTREAM 使传统的由数据库管理的大型二进制数据可以作为单独的文件存储在数据库之外,它们可以通过使用一个NTFS流API进行访问。使用NTFS流API使普通文件操作可以有效的执行,同时提供所有丰富的数据库服务,包括安全和备份。
集成的全文检索
集成的全文检索使得在全文检索和关系数据之间可以无缝的转换,同时使全文索引可以对大型文本字段进行高速的文本检索。
稀疏列
这个功能使NULL数据不占物理空间,从而提供了一个非常有效的管理数据库中的空数据的方法。例如,稀疏列使得一般包含极多要存储在一个SQL Server 2008数据库中的空值的对象模型不会占用很大的空间。稀疏列还允许管理员创建1024列以上的表。
大型的用户定义的类型
SQL Server 2008删除了对用户定义的类型的8,000字节的限制,使用户可以显著的扩大他们的UDT的规模。
地理信息
SQL Server 2008为在基于空间的应用程序中消耗、扩展和使用位置信息提供了广泛的空间支持。
·地理数据类型
这个功能使你可以存储符合行业空间标准例如开放地理空间联盟(Open Geospatial Consortium,OGC)的平面的空间数据。这使得开发人员可以通过存储与设计的平面表面和自然的平面数据例如内部空间等相关联的多边形、点和线来实现“平面地球”解决方案。
·几何数据类型
这个功能使你可以存储地理空间数据并对其执行操作。使用纬度和经度的组合来定义地球表面的区域,并结合了地理数据和行业标准椭圆体(例如用于全球GPS解决方案的WGS84)。
三、智能的
商业智能(BI)继续作为大多数公司投资的关键领域和对于公司所有层面的用户来说的一个无价的信息源。SQL Server 2008提供了一个全面的平台,用于当用户需要时你可以为其提供智能化。
(一)集成任何数据
公司继续投资于商业智能和数据仓库解决方案,以便从他们的数据中获取商业价值。SQL Server 2008提供了一个全面的和可扩展的数据仓库平台,它可以用一个单独的分析存储进行强大的分析,以满足成千上万的用户在几兆字节的数据中的需求。下面是SQL Server 2008中在数据仓库方面的一些优点。
数据压缩
数据仓库中的数据容量随着操作系统数目的快速增加而在持续增长。内嵌在SQL Server 2008中的数据压缩使得公司可以更有效的存储数据,同时还提高了性能,因为降低了I/O 要求。
备份压缩
保持一直在线做基于磁盘的备份是花费很昂贵的,并且很耗时。有了SQL Server 2008的备份压缩,保持在线备份所需的存储降低了,并且备份速度明显变快了,因为所需要的磁盘I/O 减少了。
分区表并行
分割使公司能够更有效的管理大型的、不断增长的数据表,只要简单的将它们分割为易管理的数据块。SQL Server 2008是在SQL Server 2005中的分割的优势之上建立的,它改进了对大型的分区表的操作性能。
星型联接查询优化器
SQL Server 2008为普通的数据仓库场景提供了改进的查询性能。星型联接查询优化器通过辨别数据仓库连接模式降低了查询响应时间。
资源监控器
SQL Server 2008随着资源监控器的推出,使公司可以给终端用户提供一致的和可预测的响应。资源监控器使公司可以为不同的工作负载定义资源限制和优先权,这使得并发工作负载可以提供稳定的性能。
分组设置
分组设置(GROUPING SETS)是对 GROUP BY 条件语句的扩展,它使得用户可以在同一个查询中定义多个分组。分组设置生成一个单独的结果集,这个结果集相当于对不同分组的行进行了UNION ALL 的操作,这使得聚合查询和报表更加简单和快速。
捕获变更数据
有了捕获变更数据,变更会被捕获并被放在变更表中。它捕获变更的完整内容,维护交叉表的一致性,甚至是对交叉的schema变更也起作用。这使得公司可以将最新的信息集成到数据仓库中。
MERGESQL语句
有了MERGE SQL 语句,开发人员可以更有效地处理数据仓库的场景,例如检查一行数据是否存在然后执行插入或更新。
可扩展的集成服务
集成服务的可扩展性方面的两个关键优势是:
·SQL Server集成服务 (SQL Server Integration Services,SSIS)管道改进
数据集成包现在可以更有效地扩展、使用有效的资源和管理最大的企业级的工作负载。这个新的设计将运行时间的可扩展性提高到多个处理器中。
·SSIS持久查找
执行查找是最常见的抽取、转换和加载(ETL)操作。这在数据仓库中尤为普遍,当实际记录必须使用查找来转换业务键到它们相应的替代中去时。SSIS 增强了查找的性能以支持大型表。