1 / 55
文档名称:

新品研发试制流程.ppt

格式:ppt   大小:470KB   页数:55
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

新品研发试制流程.ppt

上传人:mh900965 2018/3/17 文件大小:470 KB

下载得到文件列表

新品研发试制流程.ppt

文档介绍

文档介绍:Oracle RDBMS SQL语句处理流程
赵元杰
zyj5681@

3/17/2018
1
内容提要
10g
9iR2
优化有关的术语
一个银行业务处理流程
理解SQL执行过程
关于CURSOR_SHARING参数
监视SQL Area 的SQL语句
调整SQL步骤
3/17/2018
2
Oracle 数据库设计与性能
SQL处理流程有关
共享池概念回顾:
Shared pool是SGA的一部分,它是用来存放由应用用户发出的SQL和PL/SQL语句;
Shared Pool由3个部件组成:
库缓存(library cache)-用来存放应用用户刚发出的SQL及PL/SQL语句、存储过程、函数、包、触发器、同义词PL/SQL包及JAVA类库等对象信息;
数据字典(Data Dictionary Cache)-表、列等信息存储在该区;
用户全局区(User Global Area)-使用共享服务器选件时,用户全局区才有用,用户全局区用于存放用户会话的应用
3/17/2018
3
Oracle 数据库设计与性能
SQL处理流程有关
Oracle共享池库高速缓存工作方式:
用来缓存共享的SQL statements 和PL/SQL块,这些可以给所有的连接用户共享
由LRU(最小使用最先淘汰算法)来管理
不是FIFO(先进先出)算法管理!!
Oracle如何知道你的SQL语句是否在里面
先通过一个hash算法将Statement text运算成一个hash数值
然后通过这个hash值在共享池中查找
3/17/2018
4
Oracle 数据库设计与性能
SQL处理流程有关
SQL语句分析
SQL语法分析(Syntactical Analysis)
语法正确性分析,如关键字拼写等
语义分析(Semantic Analysis)
当前用户访问表是否有权限等
存入共享池( shared pool )
当前SQL语句语法和语义正确后存储在SGA的共享词内,可供当前会话再次使用或其他用户使用
3/17/2018
5
Oracle 数据库设计与性能
SQL处理流程有关
SQL语句的HASH值
任何SQL语句在语义分析完成后,都产生一个叫SQL Hsah Values的值
SQL Hsah Values是由Hash函数产生的,在数据库中相同的SQL语句具有相同的Hash值
Oracle系统通过SQL Hash 值来判断某个语句是否出现过
在运行过程中,用户可从V$SQLTEXT视图查询到SQL语句及其Hash值
3/17/2018
6
Oracle 数据库设计与性能
SQL处理流程有关
SQL语句重新加载
如果在SHARED POOL中找不到当前会话所发出的SQL语句,则Oracle系统重新加载
重新加载的SQL语句要做下面的工作:
语法正确性分析
如关键字拼写等
3/17/2018
7
Oracle 数据库设计与性能
SQL处理流程有关
V$libaraycache有关术语
命名空间:SQL AREA, TABLE/PROCEDURE, BODY, TRIGGER 等
gets: (parse)每当一条语句被分析一次时,该语句对应的名称空间的gets加1
gethits : 分析时在对应的名称空间找到已经存在时加1,其分析后的代码和执行计划在内存中找到了,不再执行硬分析,直接使用
pins: (excution)每当一条语句执行一次时,该语句对应的名称空间的的pins加1
reloads: (parse)因为找到的分析代码版本已经过期或作废而被重新硬分析的次数
invalidations: 因为数据词典发生变化,该语句被标记成失效,被迫重新做硬分析的次数
3/17/2018
8
Oracle 数据库设计与性能
SQL处理流程有关
绑定变量
绑定变量就是将类似的SQL语句的变化部分采用变量替代,从而减少Oracle系统类似语句的重新分析(硬分析)
如果采用绑定变量,系统只做软分析工作
SQL语句硬分析原因:
没有共享的SQL(没有使用绑定变量), 共享SQL重新硬分析了(可以查询V$sqlarea中的parse_calls和excutions字段,如果某个SQL对应的parse_calls接近excutions,说明这条SQL经常被重新硬分析)
注意:并不是绑定变量就是最好
3/17/2018
9
Oracle 数据库设计与性能
SQL处理流程有关
共享光标
绑定变量原因:
没有共享的SQL
硬分析
注意:并不是绑定变量就是最好
3/17/2018
10
Oracle 数据库设计与性能