免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3767 | 回复: 4
打印 上一主题 下一主题

硬解析(hard parse)比较多,原因都有哪些? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-10-27 14:03 |只看该作者 |倒序浏览
30可用积分
查看系统的硬解析情况:

select name,value from v$sysstat where name like 'parse%';

parse time cpu|22953
parse time elapsed|76104
parse count (total)|1224600
parse count (hard)|102851
parse count (failures)|53


发现硬解析比较高。应用程序是用jdbc开发,采用了绑定变量的方式。可能存在少量的非绑定变量的情况。

请问如何确定没能采用软解析的原因?

论坛徽章:
0
2 [报告]
发表于 2009-10-29 10:49 |只看该作者
硬解析后,对SQL语句是采用hash保存的,因此,只有完全相同的SQL语句,才能复用之前硬解析的成果,采用软解析

这里说的完全相同,包括SQL语句的大小写,空格,换行等等都完全一样才行

建议将SQL语句进行统一管理,减少由于差异导致的大量硬解析

论坛徽章:
0
3 [报告]
发表于 2009-10-29 16:59 |只看该作者
原帖由 滑翔的蜗牛 于 2009-10-29 10:49 发表
硬解析后,对SQL语句是采用hash保存的,因此,只有完全相同的SQL语句,才能复用之前硬解析的成果,采用软解析

这里说的完全相同,包括SQL语句的大小写,空格,换行等等都完全一样才行

建议将SQL语句进行统 ...


多谢!

除此之外还有其他原因吗?

或者说具体的原因是否能通过哪些视图可以确认?

论坛徽章:
0
4 [报告]
发表于 2009-10-29 17:02 |只看该作者
就信息系统而言,使用hibernate生成的语句都与相应的功能对应,而这些功能都是重复使用,所以会重复产生相同的语句,不会存在大小写、空格之类的不同,当然也去除了没有使用绑定变量的问题。

所以认为不应该是语句的不同导致的。

论坛徽章:
0
5 [报告]
发表于 2009-10-29 17:23 |只看该作者
其他原因就不清楚了,期望高人出来指点一下

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP