关系型数据库的性能指标

发布时间:2018-07-01 18:05:15   来源:文档文库   
字号:

关系型数据库的性能指标

一、数据库性能指标

数据库性能一般用两个方面的指标来衡量:响应时间和吞吐量。响应越快,吞吐量越大,数据库性能越好。

1. 操作系统有关的指标:CPU平均利用率、内存平均占用率、硬盘占用率、I/O数量、网络时延

2. 数据库有关的指标:I/OwaitMem平均使用率、cpu平均使用率、在一次I/O操作中所读的最大BLOCKS数、Log的增长情况、数据库的访问速度、数据库能支持的最大用户数、数据库CACHE命中率、不同数据库参数下的性能情况、锁的处理

二、Oracle

注:以下指标取自Oracle的性能分析工具Statspack所提供的性能分析指标。

1.关于实例效率(Instance Efficiency Percentages)的性能指标

(1)缓冲区未等待率(Buffer Nowait %)

指在缓冲区中获取Buffer的未等待比率。该指标的值应接近100%,如果该值较低,则可能要增大buffer cache。

(2)Redo缓冲区未等待率(Redo NoWait %)

指在Redo缓冲区获取Buffer的未等待比率。该指标的值应接近100%,如果该值较低,则有2种可能的情况:

1.online redo log没有足够的空间;

2.log切换速度较慢。

(3)缓冲区命中率(Buffer Hit %)

指数据块在数据缓冲区中的命中率。

(4)内存排序率(In-memory Sort %)

指排序操作在内存中进行的比率。当查询需要排序的时候,数据库会话首先选择在内存中进行排序,当内存大小不足的时候,将使用临时表空间进行磁盘排序,但磁盘排序效率和内存排序效率相差好几个数量级。

(5)共享区命中率(Library Hit%)

该指标主要代表sql在共享区的命中率。

(6)软解析的百分比(Soft Parse %)

该指标是指Oraclesql的解析过程中,软解析所占的百分比。软解析(soft parse)是指当Oracle接到Client提交的Sql后会首先在共享池(Shared Pool)里面去查找是否有之前已经解析好的与刚接到的这一个Sql完全相同的Sql。当发现有相同的Sql就直接用之前解析好的结果,这就节约了解析时间以及解析时候消耗的CPU资源。

7命中率(Latch Hit%)

获得Latch的次数与请求Latch的次数的比率

(8)SQL语句执行与解析的比率(Execute to Parse %)

SQL语句执行与解析的比率。SQL语句一次解析后执行的次数越多,该比率越高,说明SQL语句的重用性很好。

(9)共享池内存使用率(Memory Usage %)

该指标是指在采集点时刻,共享池(share pool)内存被使用的比例。

2.关于等待事件(Wait events)的性能指标

(1)文件分散读取(db file scattered read(cs))

该等待事件通常与全表扫描有关。因为全表扫描是被放入内存中进行的进行的,通常情况下它不可能被放入连续的缓冲区中,所以就散布在缓冲区的缓存中。

(2)文件顺序读取(db file sequential read(cs))

该等待事件通常与单个数据块相关的读取操作有关。

(3)缓冲区忙(buffer busy(cs))

当一个会话想要访问缓存中的某个块,而这个块正在被其它会话使用时,将会产生该等待事件。这时候,其它会话可能正在从数据文件向缓存中的这个块写入信息,或正在对这个块进行修改。

4enqueue(cs)

enqueue是一种保护共享资源的锁定机制。该锁定机制保护共享资源,如记录中的数据,以避免两个人在同一时间更新同一数据。enqueue包括一个排队机制,即FIFO(先进先出)排队机制。注意:Oraclelatch机制不是FIFOEnqueue等待通常指的是ST enqueueHW enqueueTX4 enqueueTM enqueue

(5)闩释放(latch free(cs))

该等待事件意味着进程正在等待其他进程已持有的latch

latch是一种低级排队机制(它们被准确地称为相互排斥机制),用于保护系统全局区域(SGA)中共享内存结构。latch就像是一种快速地被获取和释放的内存锁。latch用于防止共享内存结构被多个用户同时访问。

(6)日志文件同步(log file sync(cs))

这个等待事件是指当一个会话完成一个事务(提交或者回滚数据)时,必须等待LGWR进程将会话的redo信息从日志缓冲区写到日志文件后,才能继续执行下去。

三、数据库性能监控的主要指标

SGA-system global area

数据库系统全局区的大小(Oracle中的SGA)。SGA存放的是数据库中所有用户的

共同信息,SGA的大小会严重影响数据库的性能

Logical I/O

每秒逻辑读/写的次数。当我们向数据库做任何的操作时,Oracle都会先到SGA中查找有没有我们所需要的数据,如有就即时返回,没有再通过Physical I/O来向data file读数据从而减少Physical I/O的读写

Buffer cache Hit Ratio

共享池的命中率。这是衡量Logical I/O 的一个指标,如果命中率低,表明Physical I/O的读写次数必然增多,数据库性能必然下降。一般命中率都在95%以上,低于这个比率说明缓存区的设置太小

DBWR(N)

数据库磁盘写进程的数目,当并发写多数据的时候,如果DBWR的数据不足以应付,DBWR写进程耗时必然多,容易产生等待时间或锁的时间

Buffer Cache

数据共享区的大小。如果Buffer Cache太小,会造成Physical I/O过多

LGWR(N)

重做日志文件写进程的数目,磁盘I/O过多是会严重影响数据库性能

Redo Buffer Cache

重做日志缓存区的大小,这个缓存区的大小会影响到LGWR(N)的读/写次数

本文来源:https://www.2haoxitong.net/k/doc/ac81ab0e844769eae009ed50.html

《关系型数据库的性能指标.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式