易截截图软件、单文件、免安装、纯绿色、仅160KB

DB2 SQL性能优化相关的10大要素

下面提出了10条和DB2 SQL性能相关的10条因素:
1、提供适当的统计信息
对DB2优化管理器(otimizer)而言,如何更加有效的执行SQL语句是由存在于DB2 catalog中的统计信息决定的,优化器利用这些信息决定最优化的路径。
因此,为了保持系统能够做出最佳选择,需要经常的运行Runstats命令,来保持系统统计信息的及时有效。在工作负荷很大的生产环境中,经常运行Runstats是很必要的,为了减少进行统计对系统带来的影响,可以使用Sampling技术。
2、在SQL语句中尽量使用Stage 1的谓词
属于Stage 1的SQL谓词由Data Manager处理,而属于Stage 2的SQL由Relational Data Server执行。在处理效率上,Data Manager更有优势,因此,如果可能的话尽量把SQL语句写成能够在Stage 1执行的。如果能够结合Index来确定SQL语句中的谓词,那么将会更加提高SQL执行的效率。因此,在写SQL查询语句的时候,要结合Index的定义以及谓词描写的选择,尽可能的让SQL在Stage 1运行。
3、在SQL中仅选择需要的列
在SQL语句中,仅指定程序需要的列会有利于提高SQL运行的性能。如果采用Select *这种模式,将会给客户端的应用程序带来额外的处理工作,并需要更多的内存等资源。对服务器端而言,多余的列在排序过程中会增大Sort工作文件,并因此导致排序速度的下降,并需要更多的存储资源。在网络传输过程中,也将传输一些不必要的数据,降低网络效率。
4、仅选择需要的行
查询的行越少,查询的速度和响应速度就越快。查询获得的每一行数据,都经历了从存储设备-〉缓冲池-〉排序和转换-〉网络传输-〉应用程序等一系列过程。在数据的查询过程中,数据库管理器将会作很多数据的过滤工作,如果有许多并不需要的行从数据库中检索出来,将会浪费很多不必要的处理时间,因此,在SQL语句的撰写过程中应该详细的指定查询条件,仅查询需要的行。
5、如果数据库中的数据很长时间不变,在SQL尽量使用常量或者字符。
在SQL中使用主机变量,是为了使系统适应不断变化的外部环境。在SQL程序中使用主机变量能够使应用程序不需要重新绑定就可以直接执行新的SQL定义。但是这种灵活性是以降低DB2优化管理器的性能为代价的。在包含主机变量的SQL语句中,DB2优化管理器以默认的估计值来进行SQL路径的选择,而不是根据Catalog中的统计信息,这种选择很多时候都不是最优化的。因此,使用常量或者字符代替主机变量在长时间固定不变的环境中将会比使用主机变量更有优势。
6、使数字、日期等数据类型相匹


相关文档:

SQL 2005 存储过程 调试

SQL 2005 的存储过程和触发器调试大法(原创)
www.chengchen.net 程晨
       昨天晚上我找遍了互联网也没有发现关于SQL2005存储过程和触发器的调试方法,研究到凌晨2点多钟,终于找到方法了,不干独享,拿出来分享。如果要转载,请保留版权,谢谢!
     &nbs ......

(转)利用 Sql 中查看表结构信息

转自:http://hi.baidu.com/cszoo/blog/item/2439a5f517c19c2dbc31093c.html
 
(1)
SELECT
表名=case when a.colorder=1 then d.name else '' end,
表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,
字段序号=a.colorder,
字段名=a.name,
标识=case when COLUMNPROPERTY( a.id,a.name,' ......

SQL Server索引原则

如何让你的SQL运行得更快
---- 人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、 ......

SQL SERVER 2005数据加密

-- 示例一, 使用证书加密数据.
-- 建立测试数据表
CREATE TABLE tb(ID int IDENTITY (1,1),data varbinary (8000));
GO
-- 建立证书一, 该证书使用数据库主密钥来加密
CREATE CERTIFICATE Cert_Demo1 
WITH 
  SUBJECT = N'cert1 encryption by database master key' ,
  START_DATE = ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号