Foglight for Oracle方案.docx
《Foglight for Oracle方案.docx》由会员分享,可在线阅读,更多相关《Foglight for Oracle方案.docx(22页珍藏版)》请在冰豆网上搜索。
FoglightforOracle方案
QuestFoglightforOracle
管理方案
QuestSoftware
2010.3
1FoglightforOracle技术架构图
Foglight对Oracle的管理分为三个层次,如下图:
第一层(基本)
第二层(中级)
第三层(高级)
目标
掌握整个企业数据库运行状态
日常诊断与管理
分析疑难杂症、预测发展趋势等
涉及人员
DBA、经理
DBA、领域专家、经理
DBA、开发者、领域专家
指标类
操作系统与数据库基本指标(版本、状态等)
备份与恢复状态
5年以上的高精度历史数据
数据库类指标(备份状态、最近访问的信息)
数据库容量与变化
聚焦于SQL语句性能
数据库登录信息与用户信息
数据库变更
自动的性能建议报告
元数据(未加工的Oracle指标)
数据库Schema
性能基线偏差报告
数据库服务状态
客户化诊断与分析能力
碎片检测
历史数据诊断与分析能力
会话监控
指标收集方式
远程
远程
Stealthcollect代理程序
2FoglightforOracle部署图
3FoglightforOracle监控指标
3.1第一、二层收集到的指标
监控指标名称
说明
归档目的地杂项
归档写速度;估算还有多长时间归档会满等;
归档日志存储
归档文件名、位置;空闲空间;总空间;状态;传输模式等;
ASM实例
在ASM被管理盘上的IO操作统计;ASM磁盘分组;笨数据库实例在ASM上使用的空间;空闲空间百分比等;
RACCluster延迟
各种Cluster延迟时间;双向块传输速度;缓冲丢失率等;
数据文件存储
所有的数据文件存储细节,包括文件名、大小、已经使用的空间、所属表空间等;
DataGuard速度
一段时间内Apply归档日志的数量;
等待事件
实例级等待事件的分布(等待时间、类型、百分比);
文件系统磁盘
数据文件所在的OS文件系统中空闲空间的百分比、使用的空间大小等;
主机属性
主机的CPU、内存、网络等的属性;
实例汇总
数据库版本;是否处于归档状态;是否使用了ASM;是否使用了DataGuard等;
实例统计
实例级的系统统计信息,包括每秒执行的SQL语句数、会话占用的CPU百分比、硬解析数量、平均的连接数等;
IO活动性
Consistentchanges/dbblockchanges/dbblockgets、平均读时间、写时间、缓冲命中率、行链接率、磁盘排序率、直接物理读速率、会话罗季度、内存排序率、表扫描率等等;
Job队列
当前正在运行的Job的数量、状态;
锁活动性
平均锁定的时间;enqueue_waits;gets;lock_name;lock_wait;wait_pct等;
锁分解
按锁的类型(TM、TX等)分解锁的时间;
锁实例
提供实例级锁请求和锁有效性信息;
锁的树形结构
以树形结构展现发生锁定的各个会话之间的关系,包括RAC节点、锁模式、锁请求模式、客户端、程序、数据库与OS账号、时长、请求的对象等信息;
OS汇总
空闲的内存量;CPU使用量;
并行性
有关实例并行度的信息,并行执行的Server数目;
重做归档杂项
等待归档的重做日志百分比;
重做归档性能
写redologentry到日志文件的时间;日志切换完成前的会话等待时间;LGWR发出的写操作数等;
重做实例杂项
发生切换的重做日志数;
重做日志成员存储
日志成员与状态;
重做日志存储
日志组与属性,包括归档状态、第一个SCN号、大小、序号等;
Servers
专有服务器进程的数目;Dispatch数据;SharedServers数据;
会话汇总
一段时间内的平均会话数;
SGA组件
自动SGA;buffer_cache_size;java_pool;shared_pool等大小;
SubcategoriesWait
各种等待事件的分类统计,包括数据库活动时间、Cluster类等待时间、非IO等待时间等几十项指标;
表空间存储
使用的空间百分比;类型;自动扩展的ASM数文件数;自动扩展的OS数据文件数;平均的Extent大小;平均的碎片大小;是否使用的压缩;是否加密;估计表空间满的时间;Extent管理;空闲空间;是否启用了日志;空间长期增长的速度;手动管理的ASM文件的数目;空间中的最大、最小碎片;Undo空间信息;短期增长速度;等等;
Top被阻塞的对象
经常发生阻塞的段;
Top会话
当前的会话的细节,包括使用的CPU时间、状态、客户端信息、一致性改变数、当前正执行的SQL、数据库CPU时间、数据库时间、Failedover、硬解析、登录时间、物理/逻辑读写、发生等待的时间、主机进程ID号等;
总的归档存储
最快达到归档失败的归档目的地大小;最快发生归档失败的小时数;最紧急的归档空间使用;
总的数据库存储
总的数据库占用空间大小;分配的大小;是否有非自动扩展Extent的数据文件;总的空闲空间百分比;
实例有效性
RAC或单实例启动时间百分比;实例启动时间;实例响应速度;响应速度变化曲线等;
3.2第三层收集到得指标
略。
第三层的目的性能分析,聚焦于数据库7x24性能相关信息的收集、基线、诊断、分析、优化建议和报告等。
可以说包括了所有性能相关指标,以及SQL语句的详细信息。
现有软件名称是FoglightPerformanceAnalysisforOracle,简称PA。
4FoglightforOracle告警规则
4.1第一、二层告警规则
规则类
规则
说明
归档
RedoArchTimetoFail
估计的归档失败时长小于某值时告警
ArchiveStorageStatus
归档目的地失效时告警
ASM
ASMGroupReadErrs
ASM读错误时告警
ASMGroupWriteErrs
ASM写错误时告警
AvgServiceTimeBaseline
ASM当前响应时间超过基线时告警
ASMBalanceIO
ASM磁盘组上各磁盘IO分布不均衡时告警
ASMBalanceTime
ASM磁盘组上各磁盘平均响应时间不均衡时告警
ASMTotalIOBaseline
ASM当前总IO超过基线告警
TotalReadsBaseline
ASM当前读超过基线告警
TotalWritesBaseline
ASM当前写超过基线告警
ASMGroupOperation
Cluster活动性
BlocksFromICRateBaseline
当前通过内部连接取出的数据块数超过基线时告警
BlockstoICRateBaseline
当前通过内部连接发出的数据块数超过基线时告警
ClusterCacheMiss
Cluster缓冲命中率过低时告警
ClusterGCConvert
GlobalCacheServices资源的状态转换平均时间过长时告警
ClusterGLConvert
在使用GlobalCacheServices期间提取一个块的平均时间过长时告警
ClusterGLGet
在打开一个GlobalEnqueueServices资源时的平均时间过长时告警
ClusterICLatency
内部连接时间过长时告警
Dataguard状态
DGRedoConfig
归档日志成员和Standby成员不匹配时告警
DGErrors
Dataguard错误总数过多时告警
DGDestLastError
当最近一个DataGuard错误消息是非消息型信息时告警
DGAppliedGap
归档日志和已应用到Standby方相差过多时告警
DGReceivedGap
归档日志和应接收到Standby方相差过多时告警
主机Cluster
OSClusterFailover
当主机执行了Failover时告警
实例统计
ExecuteCountBaseline
当前的SQL语句执行数超过基线时告警
LogonsCurrentBaseline
当前登录用户数超过基线时告警
OpenedCursorsCumulativeBaseline
当前累计打开的游标数超过基线时告警
SGADataDictCache
数据字典缓冲命中率太低时告警
SGALibraryCache
库缓冲命中率太低时告警
HardParseRatio
请求硬解析的百分比超标时告警
无效对象
InvalidPackages
无效的包、过程等时告警
InvalidViews
无效的视图时告警
IO活动性
CacheHitRatioBaseline
当前缓冲命中率低于基线时告警
ChainedRowRatioBaseline
当前通过行链接访问量超过基线时告警
DiskSortsRatioBaseline
当前磁盘排序率超过基线时告警
FullScanRatioBaseline
当前全表扫描率超过基线时告警
PhysicalReadsBaseline
当前物理读超过基线时告警
PhysicalWritesBaseline
当前物理写超过基线时告警
RedoConsistencyOverheadBaseline
当前RedoConsistencyOverhead超过基线时告警
RedoWritesBaseline
当前Redo写超过基线时告警
SessionLogicalReadsBaseline
当前会话逻辑读超过基线时告警
IOAvgReadTime
平均物理读操作时间过长时告警
IOAvgWriteTime
平均物理写操作时间过长时告警
作业(Jobs)状态
JobQueue
队列中等待的作业数过多时告警
栓(Latch)活动性
LatchBufferChain
会话等待LatchBufferChain时间超过一定百分比时告警
LatchBufferLRUChain
会话等待LatchBufferLRUChain时间超过一定百分比时告警
LatchFree
发生LatchFreeWaits的时间超过一定百分比时告警
LatchLibCache
会话等待LatchLibraryCache时间超过一定百分比时告警
LatchLibCachePin
会话等待LatchLibraryCachePin时间超过一定百分比时告警
LatchRedoAlloc
会话等待LatchRedoAlloc时间超过一定百分比时告警
LatchRedoCopy
会话等待LatchRedoCopy时间超过一定百分比时告警
LatchSharedPool
会话等待LatchSharedPool时间超过一定百分比时告警
文件系统
FilesystemEstimatedFull
文件系统快用完时告警
主机
OSGenCPUUtilization
OSCPU使用了太高时告警
OSGenMemUtilization
OS内存使用率太高时告警
OSGenDiskUtilization
最繁忙设备使用率超过一定的百分比时告警
并行查询
ParallelDowngraded
并行查询下降时告警
ParallelSerialized
并行查询串行化时告警
ParallelServersBusy
并行查询服务器繁忙度超过一定百分比时告警
重做与归档
RedoArchIfArchived
数据库是非归档模式时告警
RedoArchMultiDest
多个归档目的地在同一个文件系统上时告警
RedoArchUnarchPct
等待归档的日志数过多时告警
RedoArchTimeToSync
Commit期间花费在写RedoLogEntry的平均时间过长时告警
RedoArchAvgRedoWrite
写RedoLogEntry到日志文件的时间过长时告警
SGA组件
SGASharedPoolUsed
共享池的使用率过高时告警
会话统计
SessSumTotalLimit
会话数与进程数(Process)之比超过一定百分比时告警
等待事件子类
ClusterWaitPct
与Cluster相关的事件占总活动时间的百分比超过一定值时告警
LockWaitContention
所等待时间占总活动时间超过一定百分比时告警
WaitLogSwitchPct
等待日志切换时间占总活动时间的百分比超过一定值时告警
WaitActiveTotalBaseline
总的活动等待时间超过基线时告警
WaitBufferBaseline
Buffer类等待时间超过基线时告警
WaitClusterBaseline
Cluster类等待时间超过基线时告警
WaitIOBaseline
IO类等待时间超过基线时告警
WaitRedoBaseline
Redo类等待时间超过基线时告警
WaitNetworkBaseline
Network类等待时间超过基线时告警
WaitOtherBaseline
Other类等待时间超过基线时告警
表空间存储
TablespaceUsedPct
表空间使用率过高时告警
Undo活动性
UndoNoSpace
Undo表空间太小以至于需要增加时告警
UndoSnaptooOld
快照太久错误告警
可用性
InstanceAvailability
实例是否运行告警
UsabilityAvailability
Cluster有效节点的百分比告警
UsabilityAvailabilitySingle
当某实例Down时告警
UsabilityConnTime
当数据库连接时间过长时告警
UsabilityConnectAvailability
当连接失败时告警
UsabilityOSConnectAvailability
连接到OS失败时告警
UsabilityRespTime
数据库平均响应时间过长时告警
注:
DBO中的基线类告警都是从PA中来的。
4.2第三级告警规则
集成了PA的所有告警信息,主要包括三类:
1)等待事件指标超过一定阀值时。
2)当数据库自动检查性能、提出各种性能建议时。
3)当数据库发生配置变更(对象创建、查询计划变化、参数修改等)时。
4)当各种指标发生性能偏差(基于性能基线)时。
规则类
规则
说明
基线偏差类
BufferWait偏差
当主要的Oracle等待事件超过基线时发出告警
CLRWait偏差
ClusterWait偏差
CPUUsage偏差
CPUWait偏差
IOWait偏差
LatchWait偏差
LockWait偏差
LogWait偏差
MemoryWait偏差
NetworkWait偏差
OtherWait偏差
RemoteProvider偏差
Workload偏差
实例建议类
BindVariable
当发生列表中的各种性能瓶颈时,Foglight自动分析问题、给出有针对性的建议、给出纠正措施、给出背景知识。
BufferBusyWait
BufferLatchContention
BufferPools
CacheBuffersChainsLatch
CacheBuffersLRUChainLatch
ClusterInterconnectLatency
CursorManagement
DatabaseFileConfiguration
DatabaseFileGrowth
DatabaseWriterProcesses
DatafileIOLoadBalance
ExcessiveMemoryPressure
ExcessiveStatementRecompiles
InefficientorMissingIndexes
InefficientQueryPlans
InternalCacheLatchContention
LibraryCacheLatch
LockTypeBreakdown
Locking
NumberofDatafileDiskDevices
NumberofRedoLogs
PGASize
RedoAllocationLatch
RedoCopyLatch
RedoLogBufferSize
RedoLogDiskConfiguration
RedoLogSize
RollbackSegments
SequenceCacheSize
SharedPoolLatch
SortAreaSize
SpaceTransactionWaits
TablesExperiencingLockContention
TablesExperiencingLockWaits
配置变更类
OracleConfiguration
实例参数变更
OSConfiguration
OS参数变更
OracleSchema
Schema变更
ExecutionPlan
执行计划变更
UserDefined
用户定义变更
OS基线
SystemCPUBaseline偏差
SystemIOBaseline偏差
SystemMemoryBaseline偏差
5Foglight数据库管理方法论与界面展现
5.1数据库监控
Foglight提供了企业级的数据库监控能力,可以同时监控企业中的大量数据库,并对其深入分析。
5.1.1监控实例与数据库的运行状态(第一层)
Foglight可以监控实例与数据库的启动、停止信息,以及实例进程占用主机资源的信息等,并预警。
如下图Foglight监控企业中的所有数据库(可以分组):
图:
Foglight监控企业级数据库
图:
另一种方式监控所有数据库
5.1.2进一步诊断与日常管理(第二层)
在上图中点击某个数据库,可对其单独监控,以数据流方式展现实例所有指标,如下图:
图:
Foglight监控某RAC环境
对任何发生问题的组件,可以直接点击,并进一步分析,如下图分析会话:
图:
监控RAC中的Session
图:
管理表空间
5.2数据库深入分析(第三层)
5.2.1数据库分析的主要内容
FoglightPA提供了大量特征用于7X24自动分析数据库性能并给出具体建议。
⏹系统总体视图:
实时反映各种Oracle等待事件和OS指标,及变化曲线。
⏹性能基线能力:
可以根据应用实际压力自动设置性能基线。
对超出基线的指标给出告警。
⏹专家级性能建议能力:
对当前的数据库运行状态进行健康检查,给出合理化建议。
⏹下钻能力:
快速识别性能瓶颈和应用运行趋势,直接找到产生性能问题的根本原因。
⏹自动报告能力:
可以针对重要的系统管理内容,如系统健康状况、性能和容量规划等方面产生和调度历史诊断报告。
⏹实时实例监控能力:
包括会话的活动情况,并定位到具体的执行程序。
⏹改变跟踪能力:
识别和追踪系统、实例、Schema、SQL执行计划的变化。
FoglightPA进行能自动分析数据库性能问题,提供包括TopSQL、各种等待事件分布等在内的各种信息。
特别地,记录了所有TopSQL的执行时间、CPU使用时间、IO等待时间、网络等待时间、Redo等待时间、执行次数等详细信息,随时可以根据各种资源使用排序TopSQL。
如下图:
图:
FoglightPA分析执行次数最多的TopSQL
5.2.2数据库分析的方法论
FoglightPA提供了一个完整的诊断、分析、解决、验证的数据库性能管理方法论。
需要注意的是,FoglightPA存储了多年的、详细的性能数据,可以随时分析任意历史时间段的性能。
1)通过Foglight数据库监控、直接用户反馈等手段发现性能问题。
2)在FoglightPA中定位问题发生时间点或时间段;
图:
定位问题发生点
3)检查这一时间段中DB资源消耗与OS资源消耗的分布情况,定位资源消耗最大的部分,或者定位TopSQL;
4)检查FoglightPA给出的自动化性能建议;
图:
自动的专家级性能建议
5)根据性能建议制定解决方案,并在合适的时间在数据库中实施。
6)通过FoglightPA的负载对比功能比较优化前后数据库的性能,检查是否有提升。
7)如此往复,不断优化提升数据库性能。
6方案扩展
Foglight是应用于企业级应用系统管理的软件。
包括数据库管理、应用管理、基础架构管理、虚拟化管理、终端用户管理等各个方面。
Foglight支持客户化,包括自定义指标、自定义规则、自定义界面、自定义工作流程等。
另外,Quest也有专门针对Oracle的数据联机重组方案、SQL语句优化方案。