网亚机房管理软件博客

新实用主义典范

T-SQL与CLR数据逻辑

随着在SQL Server中集成CLR,通常所称的业务逻辑层和数据层之间的分隔线变得更加模糊。当然,这并不是坏事,只是意味着当选择把中间层逻辑和数据库访问逻辑放到什么地方时,需要多费一些思量而已。

最佳实践指出,在进行数据检索时,T*SQL是首选的方法。将数据操纵和CPU密集的函数和过程交给托管代码处理,特别是要对返回的数据进行复杂的逻辑处理时(例如复杂的数学计算或字符串解析)。

另外要考虑的一点是代码在什么地方。把特定的逻辑放到客户端还是服务器更好?多层应用程序通常有数据层,用于在单独的服务器或在客户端工作站上处理大部分数据逻辑。但是在SQL Server中,T-SQL和托管代码也可以在数据库服务器上运行。这带来的额外好处包括可以利用工作站计算机的性能越来越好,可以完成大量应用程序处理而不会出现明显的性能降级。事实上,许多客户端计算机的处理能力都没有被利用好。这意味着许多应用程序处理可以交由客户端处理,从而释放服务器,使其处理其他任务。

对等复制机房数据库数量

在对等复制中,每一个参与者即是发布者也是订阅者。这种复制类型适用于当用户应用程序需要读取或修改建立过程中任何参与数据库的数据时。这也是另一种解决负载均衡和高可用性问题的方式。注意只有SQL Server企业版才具有该功能。Oracle把这种类型的复制称作“multimaster”(多主复制),DB2则称之为“update anywhere”(随处更新)。

当评估和创建对等复制时需要记住以下几点:

该功能设计用于参与数据库数量较少的场景。经验是数据库数量应该小于10,如果大于10,就可能会遇到性能问题。

连接机房管理系统属性

大多数用户都不会用到“连接”选项页面。SQL Serverdialing在默认情况下使用机房管理系统服务器名称默认端口、SQL Server代理的服务账户以及客户端配置和SQL Server支持协议之间的最高匹配协议,连接SQL Server。你可能希望在下列几种情况下修改这些默认配置。

机房管理系统服务器有多块网卡,并且要指定特定IP地址或端口。

要使用特定协议(如IP协议)连接。

要使用与服务账户登录名不同的登录名将SQL Server代理连接到服务器。

系统动态机房管理视图

在调优过程中的一项工作就是调查由查询重编译导致的CPU过高和查询变慢。很多因素都会到最后重编译,包括参数化、过期的统计信息以及大量机房数据变更。

可以使用一些系统DMV调查查询计划重编译问题。其中最重要的一个是sys.dm exec cached plans。该视图中一行对应一个缓存的计划,可以和sys.dm exec sql text视图连接,从而获取计划缓存中包含的SQL文本。

上述查询手机的信息主要包含在下述列中:

Text——生成查询计划的SQL文本。

«1»

Powered By Z-Blog 2.0 Doomsday Build 121221

版权所有©2007-2013 南京网亚计算机有限公司
QQ:502800066(购买咨询) 1074187861(技术支持) 邮件: sales@ji-fang.cn
电话:( 025)84533318 (025)84533319 (025)66671103 13913982176 传真: (025)84533320
地址: 江苏省南京市中山东路198号龙台国际大厦1205室