db time 时间单位
来源:互联网 发布:电子杂志制作软件 编辑:程序博客网 时间:2024/05/04 10:32
先来说一下时间单位和简写:
1, centi-代表"百分之一", 所以cs表示百分之一秒2, milli-代表"千分之一", 所以ms表示千分之一秒3, micro-代表"百万分之一", 所以us表示百万分之一秒
我一直搞不清楚V$SYSSTAT中的CPU used by this session和V$SQL中的CPU_TIME一列的时间单位是什么,
今天就写一下来帮助自已记得更清楚一些, 查阅Oracle 9i的数据库参考手册后, 终于搞明白了:
1, V$SYSSTAT或V$SESSTAT中的CPU used by this session的单位是百分之一秒(cs)2, V$SQL中的CPU_TIME一列中用的是百万分之一秒(us)
从我的工具的运行状况来看, V$SQL的CPU_TIME采用百万分之一秒(us)的单位实在是太小了,
导至这个列的值经常溢出, 也就是后一个时间点的值减前一个时间点的值后居然是负值(在这儿我用的是2分钟的采样频率),
如果是15分钟或以上间隔的STATSPACK的信息, 我相信这个列的数据是不准确的, 或许应当采用大一些的计量单位.
查了一下10g(R2)的数据库参考手册, 和上面说的一样, 没有变动.
常用的 sql 如下 :
1.
select * from SYS.V_$SYSMETRIC
where METRIC_NAME IN ( 'Database CPU Time Ratio', 'Database Wait Time Ratio')
AND INTSIZE_CSEC = (select max(INTSIZE_CSEC) from SYS.V_$SYSMETRIC);
2.
select * from sys.v_$sysmetric_history where metric_name = 'Database CPU Time Ratio' order by 1
3. 响应时间
select CASE METRIC_NAME
WHEN 'SQL Service Response Time' then 'SQL Service Response Time (secs)'
WHEN 'Response Time Per Txn' then 'Response Time Per Txn (secs)'
ELSE METRIC_NAME
END METRIC_NAME,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then ROUND((MINVAL / 100),2)
WHEN 'Response Time Per Txn' then ROUND((MINVAL / 100),2)
ELSE MINVAL
END MININUM,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then ROUND((MAXVAL / 100),2)
WHEN 'Response Time Per Txn' then ROUND((MAXVAL / 100),2)
ELSE MAXVAL
END MAXIMUM,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then ROUND((AVERAGE / 100),2)
WHEN 'Response Time Per Txn' then ROUND((AVERAGE / 100),2)
WHEN 'Response Time Per Txn' then ROUND((AVERAGE / 100),2)
ELSE AVERAGE
END AVERAGE
from SYS.V_$SYSMETRIC_SUMMARY
where METRIC_NAME in ('CPU Usage Per Sec',
'CPU Usage Per Txn',
'Database CPU Time Ratio',
'Database Wait Time Ratio',
'Executions Per Sec',
'Executions Per Txn',
'Response Time Per Txn',
'SQL Service Response Time',
'User Transaction Per Sec')
ORDER BY 1;
4.解析比例
SELECT 'Soft Parses ' "Ratio",
ROUND(((SELECT SUM(value)
FROM V$SYSSTAT
WHERE name = 'parse count (total)') -
(SELECT SUM(value)
FROM V$SYSSTAT
WHERE name = 'parse count (hard)')) /
(SELECT SUM(value) FROM V$SYSSTAT WHERE name = 'execute count') * 100,
2) || '%' "Percentage"
FROM DUAL
UNION
SELECT 'Hard Parses ' "Ratio",
ROUND((SELECT SUM(value)
FROM V$SYSSTAT
WHERE name = 'parse count (hard)') /
(SELECT SUM(value) FROM V$SYSSTAT WHERE name = 'execute count') * 100,
2) || '%' "Percentage"
FROM DUAL
UNION
SELECT 'Parse Failures ' "Ratio",
ROUND((SELECT SUM(value)
FROM V$SYSSTAT
WHERE name = 'parse count (failures)') /
(SELECT SUM(value)
FROM V$SYSSTAT
WHERE name = 'parse count (total)') * 100,
5) || '%' "Percentage"
FROM DUAL;
- db time 时间单位
- DB是什么单位
- 射频电平单位dB
- DB time VS. DB CPU
- 时间单位
- Oracle DB Time 解读
- dB单位含义及换算
- AWR中的DB Time和CPU time
- Total Call Time与DB Time
- Oracle DB time概念理解
- 时间单位的换算
- 时间单位换算表
- 时间单位换算
- 时间的单位换算
- 时间的单位换算
- 时间单位及转换
- 时间单位换算
- 时间的单位换算
- first opengl
- 菜鸟看三国(二)如何做一名好的员工
- typedef 用法详解
- Eclipse 与 MyEclipse?
- ie6-ie9 hack
- db time 时间单位
- AchartEngineActivity引擎绘制柱状图、曲线图
- 为什么到今天还要坚持写博客
- 回车"(carriage return)和"换行"(line feed)与 ASCII
- Mysql 5 存储过程异常处理
- Socket Configuration Options
- ksm
- vi的基本使用
- Android SQLite学习指南