您当前的位置: 首页 > 数据库教程 > MSSQL教程 > SQL Server 2008管理和开发的效能

SQL Server 2008管理和开发的效能

作者: 来源: 发布时间: 2010-06-05 16:53 点击:
由于现今的资讯系统迈向全面地连接整合(例如标准化与服务导向架构),搜集资料的技术翻新(例如RFID,以及各种的手持移动装置),让资料处理的质与量需求大增。据统计,全世界有30%的资料放在关联式资料库,称为结构化资料。另有70%的资料则以不同的格式存在,例如XML

SQL Server 2008管理和开发的效能

由于现今的资讯迈向全面地连接整合(例如标准化与服务导向架构),搜集资料的技术翻新(例如RFID,以及各种的手持移动装置),让资料处理的质与量需求大增。据统计,全世界有30%的资料放在关联式资料库,称为结构化资料。另有70%的资料则以不同的格式存在,例如、地理空间资讯、图像资料、各种格式的档案(如 、PDF)…等等。在硬件存储设备大幅提升容量但价格快速滑落的今日, 2008 期待可以纳入这些半结构性(semistructure)与非结构性资料(unstructured)。让所有的资料能够在同一平台上,一起控管与维护,例如统一地更新资料、权限、高可获得性、检索、分析与报表…等等。

  一般而言,企业的资料每年以1.5倍的等比级数成长,而应用资料的方式也一直翻新。这造成对资料平台的稳定性、安全、效率、可扩充性、易管理、好开发、跨平台同步资料…等需求也日益严苛。微软在今年(2008)第三季发布了SQL Server 2008,它针对上述需求全面地强化。而本文仅针对执行效率有关的部分进行讨论。

  管理方面

  以原则为基础(Policy-based)的管理:
  组合管理条件后,套用到、资料库、资料表...等单位,定期检查或强制施行。在在Microsoft SQL Server 2008 Feature Pack( http://www.microsoft.com/downloads/details.x?FamilyId=C6C3E9EF-BA29-4A43-8D69-A2BED18FE73C&displaylang=en )已经提供了许多与效能相关的管理原则,可用以检核相关的SQL Server设定。

  保障运算效能与分析

  效能资料搜集分析与Management Data Warehouse:集中收集多台 SQL Server服务器执行个体的资料,例如管理或效能资讯(硬盘使用、查询统计、系统效能计数器…等),并产生分析报表。

  透过精灵在指定的服务器只行个体建立SQL Server预先定义好、存放系统资料的资料仓储(data warehouse),该资料仓储就是一般的资料库。

  在个别服务器执行个体收集到资料后,预设先快取到指定的本机目录下,然后以批次的方式加入集中的Management Data Warehouse内。

  Resource Governor与资源管理:Resource Governor是SQL Server 2008新增的功能,即由定义需求可使用的CPU和记忆体资源,以保障服务器的资源不会被少数使用者过度使用。

  设定不同的Pool/资源群组,规范该群组可用的资源,如CPU和Memory的比例。以保障资源不会被某些程序耗尽,而其他程序无资源可用。

  仅企业版支持,以执行个体为单位。透过以T-SQL撰写的自订函数回传所属群组的名称,将登入的连接(connection)赋予到与先定义好的workload group,不是以特定的查询语法为单位,在自订函数内可以利用Host_Name、App_Name、SUSER_Name、Is_Member、ConnectionProperty 等 T-SQL预设函数来定义商业逻辑,例如哪个应用程式建立的连接,就可使用高/低比例的资源。

  如果没有其它连接在第二个群组,则单一群组设定上虽不允许使用100%资源,然因为没有其他比例分配的组群抢资源,则仍可以使用全部资源。

  这可提升系统稳定性,但并没有为服务用量计价的机制。

  资料:
  线上资料压缩:针对资料表,分为Row 和 Page两种压缩。压缩资料虽然较耗CPU资源,但提升资料载入记忆体与回存硬盘的效率中,写入硬盘或传递到远端服务器、存储体都比较快,若压缩率好,将因节省了I/O时间而提升整体效率。备份的内容也可压缩,节省硬盘资源,而压缩率会与资料形态有关。

  资料库备份压缩:

在记忆体备份的内容立即压缩,这会消耗cpu的运算力,但写入硬盘或传递到远端存储体都较快。

  预设未启动,而Mirroring 与 Log Shipping 会自动启动压缩交易记录。

  压缩率视资料形态、资料库本身是否有压缩以为加密而不同。

  只有Enterprise Edition 支援压缩,但压缩的备份可以restore到任意其它版本

  Hot-Add CPU:服务器可不停机直接增加CPU,SQL Server 执行个体也可以立即采用该CPU。

  开发方面

  新资料形态,日期和时间形态分开,新增date、time、datetime2、datetimeoffset 等日期格式:

  时间与日期分开,在利用“between…and…”取时间间隔时可方便许多,而datetimeoffset资料格式则可以让你记录与时区有关的时间资料。

  另外,time、datetime2、datetimeoffset 等形态的资料长度可变动,让你可在精确度与节省空间两者间选择。

  旧的时间函数可以使用新的资料形态,并提供新的时间函数以取得更精确的时间。
由于大部分的应用日期和时间是分开的,精确使用date 和 time类型后,在存储时可节省空间,索引也更有效率,且透过T-SQL 存取时,也省掉不必的格式运算。

  新索引结构,设定索引的过滤条件(Filtered Index):

  对符合Where 条件的值建立索引,例如:建立索引时限制栏位值不可NULL,则针对Sparse Column建出来的索引资料量就小很多。这可减轻于一般新增、修改、删除资料时,因为要维护索引资料所造成的负荷。

  因为是对资料子集建索引,整个资料量少,统计的精确度更高,则执行计划的判读将更为精确。

  T-SQL 增加Merge语法:

  与ANSI SQL 2006的Merge定义相容并加以延伸。

  比较来源与目的资料后,以一句 Merge 语法同时完成新增、修改、删除等动作。如同单一句 SQL 语法自动含在交易内,透过 Merge 语法所有更新的资料都包在一个交易内,

  不像以往需明确定义交易,然后包含多句变更资料的 DML 语法。以往若要同步两个资料表,可能同事要执行 Insert、Delete 和 Update 三句话,两个资料表最少要 Join 比对三次,而 Merge 语法可以对比一次,就完成各种更新动作。

  若用 UPDATE FROM JOIN 语法变更资料,若来源端有两笔以上记录对应到目的端,则以哪一笔记录更新将无法推测,Merge 语法则直接回传错误。

  SQL Server 2008 与效能相关的议题就探讨到此,希望对你熟悉SQL Server 2008有所帮助。

分享到:
本文"SQL Server 2008管理和开发的效能"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4