Oracle视图学习DBA_HIST_ACTIVE_SESS_HISTORY

article/2025/9/26 18:59:23
dba_hist_active_sess_history:这个视图是用来生成 ASH report 的, 但是 ASH report 并没有充分的利用这个视图的强
大之处,我们通过分析这个视图的详细数据,往往可以找到问题发生的原因.
可以从宏观和微观两个维度来分析这个视图(用 11gR2 的 dba_hist_active_sess_history
做例子):
比如
宏观:
a) 可以按照一段时间内(发生问题的时间段)这些 session 等待的非空闲等待事件
的类型做分类和求和,就可以知道哪种等待事件最严重
b) 可以按照一段时间内(发生问题的时间段)等待最严重事件的这些 session 所执行的 SQL_ID 来汇总求和,可以知道哪个 SQL 跟这个问题相关
微观:
a). 对于某一条 dba_hist_active_sess_history 的记录,我们可以知道这个 session 的
SESSION_STATE 是 ON CPU 还是 WAITING, 如果是 ON CPU,那么这个 session 的 event 就
无 意 义 了 ; 如果是 WAITING, 可 以 进 一 步 看 它 的 等 待 事 件 和
BLOCKING_SESSION_STATUS, 如 果 它 是 被 另 一 个 session 阻 塞 , 那 么
BLOCKING_SESSION_STATUS 这一列就会显示为 VALID 或 GLOBAL. 然后再检查
BLOCKING_INST_ID 和 BLOCKING_SESSION 找到阻塞这个 session 的是哪里实例上的哪
个 session
b). 按照 SAMPLE_TIME 排序,我们可以找到问题发生的具体的时间点 (还是比较精确
的)
c). 对某个 session, dba_hist_active_sess_history 还能揭示更多有用的信息, 比如这个
session 当前执行的 SQL 语句的类型(SQL_OPCODE, SQL_OPNAME), 这个 session 是否在
PARSE(IN_PARSE, IN_HARD_PARSE 等 ), 它是什么客户端 (PROGRAM, MODULE,
ACTION, CLIENT_ID, MACHINE), 它使用的 PGA(PGA_ALLOCATED), 它使用的 temp 空
间大小(TEMP_SPACE_ALLOCATED)等等
善于使用 dba_hist_active_sess_history 能极大地帮助我们分析问题.但是也要注意
dba_hist_active_sess_history 不是万能的: 如果最终阻塞别人的 session 当时并不是 active 的
或者它并没有被 ASH 记录到 dba_hist_active_sess_history 中, 我们还是不能知道它当时处于
一种什么状况.
结语: 总之, 分析类似的问题就是充分挖掘已有的 trace/日志的过程, 但是因为缺少足
够的诊断日志/信息,很多时候还是无法找到问题发生的原因. 如果我们确实有需要找到 root
cause, 那么在发生问题时就需要收集到足够多的信息. 比如hanganalyze, systemstate dump等

DBA_HIST_ACTIVE_SESS_HISTORY视图详细信息:

在这里插入图片描述


http://chatgpt.dhexx.cn/article/FfC2dMs3.shtml

相关文章

tensorflow的sess.run的参数执行顺序

sess.run的多个参数执行 是将整个计算图中所有需要计算的节点,计算完全后一次行输出, 两次print顺序不同,结果不同 import tensorflow as tf# 基础数据 state1 tf.Variable(0, dtypetf.int8,name mi) state tf.Variable(0, dtypetf.int8…

sess.run()

函数:run(fetches, feed_dictNone, optionsNone, run_metadataNone) 当构建完图后,需要在一个session会话中启动图,第一步是创建一个Session对象。 为了取回(Fetch)操作的输出内容, 可以在使用 Session 对象…

Paper Reading:SESS(Self-Ensembling Semi-supervised3D ObjectDetction)

BackGround 虽然3D点云的目标检测当前运用十分广泛,但是当前大部分3D目标检测的方法强依赖于带有标注的数据。这些带有标注的数据往往是需要付出昂贵的代价,在2021年的水平大概是¥0.1一个框,那么一帧数据也就是对应的&#xffe5…

SESS: Self-Ensembling Semi-Supervised 3D Object Detection论文阅读及理解

SESS: Self-Ensembling Semi-Supervised 3D Object Detection Abstract 3d检测通常以来目标的标签和注释,然而获得这些注释是十分困难的。 SESS一种自集成的半监督三维目标检测框架。 设计了一种扰动方案,加强对未标记数据和新的为可见数据的泛化。 …

Elasticsearch——》ngram分词器

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

Elasticsearch 的 NGram 分词器使用技巧

一、什么是NGram 分词器? NGram分词器是ES自带的具有前缀匹配搜索功能的一个文本分词器。它能根据文本的步长逐步对写入的文本内容进行约束切割; 二、NGram和index-time搜索推荐原理 搜索的时候,不用再根据一个前缀,然后扫描整个倒排索引了…

Ngram模型

N-Gram是大词汇连续语音识别中常用的一种语言模型,对中文而言,我们称之为汉语语言模型(CLM, Chinese Language Model)。汉语语言模型利用上下文中相邻词间的搭配信息,在需要把连续无空格的拼音、笔划,或代表字母或笔划的数字&…

ElasticSearch之ngram分词器

一、什么是NGram 分词器? edge_ngram和ngram是ElasticSearch自带的两个分词器,一般设置索引映射的时候都会用到,设置完步长之后,就可以直接给解析器analyzer的tokenizer赋值使用。 二、怎么使用 完整的索引结构: {&…

MySql的Ngram全文索引

前言 在我们日常开发中,很多时候会遇到对数据库中某个字段模糊查询的需求,也就是like某个字段,但是很多公司像阿里,京东都禁止使用like来对数据库进行模糊查询,原因是啥呢? 我们先来看下面三条语句 其中t…

语言模型-Ngram

总结工作中用到和学习的知识,也算自己的一个笔记。 语言模型 语言模型简单来讲,就是计算一个句子的概率,更确切的说是计算组成这个句子一系列词语的概率。 举个简单的例子,我们知道“武松打死了老虎”相比于“老虎了死武松打”,更像是一句正常的话,这是因为前者出…

N-gram算法

语言模型 语言模型起源于语音识别(speech recognition),输入一段音频数据,语音识别系统通常会生成多个句子作为候选,究竟哪个句子更合理?就需要用到语言模型对候选句子进行排序。 语言模型:对于任意的词序列&#xf…

N-Gram语言模型

一、n-gram是什么 wikipedia上有关n-gram的定义: n-gram是一种统计语言模型,用来根据前(n-1)个item来预测第n个item。在应用层面,这些item可以是音素(语音识别应用)、字符(输入法应用)、词&am…

MATLAB 离散傅里叶变换(DFT)、逆离散傅里叶变换(IDFT)、快速傅里叶变换(FFT)的实现

离散傅里叶变换(DFT)、逆离散傅里叶变换(IDFT)的实现 代码如下,其中xn为时序序列 clc;clear; xn[7,6,5,4,3,2]; Xkdft(xn,6); xidft(Xk,6);subplot(2,2,1);stem(0:5,abs(Xk),filled); axis([0,5,0,1.1*max(abs(Xk))]…

图像处理基础(三)DFT与IDFT变换

傅里叶变换(DFT) 首先来看看傅里叶(DFT)变换的公式 (1) FP\frac {1}{N}\sum_{x0}^{N-1}\sum_{y0}^{N-1}P_{x,y}\exp(-j(\frac{2 \pi}{N})(uxvy)) 幅度 (2) w\sqrt{u^2v^2} 其中 u,v代表空间频率,即灰度梯度,梯度由坐标与灰度值求导的向量 w代表 振幅…

第4章 Python 数字图像处理(DIP) - 频率域滤波7 - 二维DFT和IDFT的一些性质 - 傅里叶频谱和相角

目录 二维DFT和IDFT的一些性质傅里叶频谱和相角 二维DFT和IDFT的一些性质 傅里叶频谱和相角 F ( u , v ) R ( u , v ) j I ( u , v ) ∣ F ( u , v ) ∣ e j ϕ ( u , v ) (4.86) F(u, v) R(u, v) jI(u, v) |F(u, v)|e^{j\phi(u,v)} \tag{4.86} F(u,v)R(u,v)jI(u,v)∣F(…

实数序列频谱的共轭对称性(DFT与IDFT仿真实现)

一、基础知识 1、傅里叶变换:通俗来讲,是以时间为自变量的信号与以频率为自变量的“频谱函数”之间的某种转换关系。 DFT:即离散傅里叶变换,对离散序列进行傅里叶变换。设x(n)为长度为M的有限长序列,其N点DFT定义(公…

第4章 Python 数字图像处理(DIP) - 频率域滤波8 - 二维DFT和IDFT的一些性质 - 二维离散卷积定理

目录 二维DFT和IDFT的一些性质二维离散卷积定理二维离散傅里叶变换性质的小结 二维DFT和IDFT的一些性质 二维离散卷积定理 二维循环卷积表达式: ( f ⋆ h ) ( x , y ) ∑ m 0 M − 1 ∑ n 0 N − 1 f ( m , n ) h ( x − m , y − n ) (4.94) (f \star h)(x, …

FFT学习笔记(DFT,IDFT)

昨天参悟了一天FFT,总算是理解了,今天的莫比乌斯反演也不太懂,干脆弃疗,决定来认真水一发博客。 什么是FFT? FFT(Fast Fourier Transformation),即为快速傅氏变换,是离散傅氏变换&…

【OpenCV4】图像的傅里叶变换 cv::dft() 和逆变换 cv::idft() 解析(c++)

图像傅里叶变换的作用: 频谱分析,获取图像中高频低频的分布情况快速卷积,两个矩阵的傅里叶变换结果相乘 案例代码: cv::Mat TestOpencvDft() {cv::Mat lena cv::imread("lena.jpg", 0);cv::resize(lena, lena, cv::…

Matlab如何进行利用离散傅里叶逆变换iDFT 从频谱恢复时域信号

文章目录 1. 定义2. 变换和处理3. 函数4. 实例演示例1:单频正弦信号(整数周期采样)例2:含有直流分量的单频正弦信号例3:正弦复合信号例4:含有随机干扰的正弦信号例5:实际案例 5. 联系作者 1. 定…