Sybase数据库性能调优
1 概述
性能指标
数据库性能一般用两个方面的指标来衡量:响应时间和吞吐量。响应越快,吞吐量越大,数据库性能越好。响应时间和吞吐量有些情况下不能一起得到改善。
调优级别
对Sybase数据库性能调优,可以从四个方面进行:
一) 操作系统级:对网络性能、操作系统参数、硬件性能等作改进。
二) DB Server级:调整存取方法,改善内存管理和锁管理等。
三) 数据库设计级:采用降范式设计,合理设计索引,分布存放数据等。
四) 应用程序级:采用高效SQL语句,合理安排事务,应用游标,处理锁。
本文对第一方面的内容不做讨论,第二方面提到的概念只适用于Sybase数据库,但第三、第四方面讨论的问题同样适用于Sybase外的其他数据库。以上各个方面的措施是相互牵连的,具体到解决一个性能问题,有时候要综合应用。
调优工具
在分析Sybase数据库的性能时,要用到一些数据库系统本身提供的性能调优工具,包括几个系统存储过程:
名称
功能简要介绍
sp_sysmon
企业级系统性能报告工具
sp_lock
查看锁的情况
sp_who
查看线程的活动情况
sp_procqmode
存储过程的查询处理模式
sp_configure
配置SQL Server系统级参数
sp_estspace
估计创建一个表需要的空间和时间
sp_spaceused
估计表的总行数及表和索引占用的空间
sp_monitor
监视CPU、I/O的统计活动情况
在利用isql等一些工具时,还可以设置查询会话中的几个选项,来显示SQL语句执行时的各种统计分析结果:
指令
On 的含义
set noexec on/off
分析SQL语句后,还要执行
set statistics io on/off
统计SQL执行所需I/O
set statistics time on/off
统计SQL语句执行耗时
set showplan on/off
显示查询计划
sp_sysmon 的使用
企业级性能报告工具、系统存储过程sp_sysmon 的使用方法:
在isql 下,首先输入 sp_sysmon 'begin_sample' 启动一个报告采样
过一段时间后,再输入 sp_sysmon'end_sample' 结束上次报告采样
或者紧跟一参数 sp_sysmon 'end_sample',"dcache" 结束上次报告采样, 但只显示数据缓冲(Data CacheManagement)这一部分的情况。
能替换dcache的可选参数如下表所示:
参数
参数全称,内容范围解释
Dcache
Data Cache Management,数据缓冲
Kernel
Kernel Utilization,有关引擎、网络和I/O等情况
Wpm
Worker Process Management
Parallel
Parallel Query Management
Taskmgmt
Task Management
Appmgmt
Application Management
Esp
ESP Management
Housekeeper
Housekeeper Task Activity
ess
Monitor Access to Executing SQL
Xactsum
Transaction Profile
Xactmgmt
Transaction Management
Indexmgmt
Index Management,索引管理
Mdcache
Metadata Cache Management
Locks
Lock Management,锁管理
Pcache
Procedure Cache Management
Memory
Memory Management
Recovery
Recovery Management
Diskio
Disk I/O Management,磁盘I/O管理
Netio
Network I/O Management
用sp_sysmon可以得到数据库系统的性能基准报告,但要在比较稳定的状态下产生,方可作为参考和对照的依据。
理解存储方法
只有清楚数据库存储数据的底层细节,如数据页、索引页的物理结构,每一行的大小计算,不同类型列占用的宽度等等问题,才能对各种调优措施有个深入领会。关于这个问题,比较复杂
数据库性能调优 来自淘豆网m.daumloan.com转载请标明出处.