查看: 2573|回复: 7

关于oracle优化器的一些疑问

[复制链接]
论坛徽章:
183
2008版在线时间
日期:2010-06-01 00:01:32奥运纪念徽章
日期:2013-07-18 13:55:12大众
日期:2013-09-29 21:57:31大众
日期:2013-11-19 14:51:47凯迪拉克
日期:2013-12-06 09:40:33奔驰
日期:2013-12-10 08:41:56优秀写手
日期:2013-12-18 09:29:122014年世界杯参赛球队:巴西
日期:2014-06-12 16:34:36
发表于 2009-7-25 10:32 | 显示全部楼层 |阅读模式
书上说
如果以最佳吞吐量为目标,
结果更倾向于使用全表扫描而不是索引扫描,或者使用排序合并连接而不是嵌套循环连接;
如果以最快的响应速度为目标,其结果则通常倾向于使用索引扫描和嵌套循环连接


疑问 什么事吞吐量
于是上网查吞吐量的的概念:单位时间内能够处理的事情的数量 这个事情可以是 IO CPU 事务..........
另外一种解释是说 单位时间内完成的SQL的数量

如果按照这样理解的话就很奇怪   全表扫描单位时间内处理的SQL会比索引扫描更多?不然怎么说  最佳吞吐量  使用全表扫描而不是索引扫描??
论坛徽章:
183
2008版在线时间
日期:2010-06-01 00:01:32奥运纪念徽章
日期:2013-07-18 13:55:12大众
日期:2013-09-29 21:57:31大众
日期:2013-11-19 14:51:47凯迪拉克
日期:2013-12-06 09:40:33奔驰
日期:2013-12-10 08:41:56优秀写手
日期:2013-12-18 09:29:122014年世界杯参赛球队:巴西
日期:2014-06-12 16:34:36
 楼主| 发表于 2009-7-25 20:32 | 显示全部楼层
UP

使用道具 举报

回复
论坛徽章:
9
2009新春纪念徽章
日期:2009-01-04 14:52:28祖国60周年纪念徽章
日期:2009-10-09 08:28:00ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51蛋疼蛋
日期:2011-08-09 14:26:55ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51ITPUB 11周年纪念徽章
日期:2012-10-09 18:09:19奥迪
日期:2013-09-12 15:57:042014年新春福章
日期:2014-02-18 16:43:09马上有钱
日期:2014-02-18 16:43:09
发表于 2009-7-25 20:36 | 显示全部楼层
al_rows 仅仅是以最小的代价去完成一条SQL并得到结果。 那么吞吐量不过是单位时间内执行更多的SQL,并得到结果,我更喜欢这个说法:另外一种解释是说 单位时间内完成的SQL的数量

上面强调的是最小代价,完成SQL,得到结果。

而first_row_n仅仅是以最快速度显示前面的n行。 自然就不能保证最小代价。

如果以最快的响应速度为目标,其结果则通常倾向于使用索引扫描和嵌套循环连接===》这个容易理解

结果更倾向于使用全表扫描而不是索引扫描,或者使用排序合并连接而不是嵌套循环连接==》这个我不认为是这样。

应该是ORACLE在选择执行计划的时候选择代价最小的,不管他们采用什么方式扫描表,或者去JOIN。 仅仅以最小代价而已。 至于说倾向于全表还是索引,合并连接还是LOOP, 我们都不知道。 仅仅SQL执行的时候ORACLE通过统计信息去计算,然后选择。

使用道具 举报

回复
论坛徽章:
183
2008版在线时间
日期:2010-06-01 00:01:32奥运纪念徽章
日期:2013-07-18 13:55:12大众
日期:2013-09-29 21:57:31大众
日期:2013-11-19 14:51:47凯迪拉克
日期:2013-12-06 09:40:33奔驰
日期:2013-12-10 08:41:56优秀写手
日期:2013-12-18 09:29:122014年世界杯参赛球队:巴西
日期:2014-06-12 16:34:36
 楼主| 发表于 2009-7-25 20:41 | 显示全部楼层
明白了

使用道具 举报

回复
论坛徽章:
9
2009新春纪念徽章
日期:2009-01-04 14:52:28祖国60周年纪念徽章
日期:2009-10-09 08:28:00ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51蛋疼蛋
日期:2011-08-09 14:26:55ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51ITPUB 11周年纪念徽章
日期:2012-10-09 18:09:19奥迪
日期:2013-09-12 15:57:042014年新春福章
日期:2014-02-18 16:43:09马上有钱
日期:2014-02-18 16:43:09
发表于 2009-7-25 20:45 | 显示全部楼层
明白了。那你要说句谢谢啊。 礼貌问题

使用道具 举报

回复
论坛徽章:
183
2008版在线时间
日期:2010-06-01 00:01:32奥运纪念徽章
日期:2013-07-18 13:55:12大众
日期:2013-09-29 21:57:31大众
日期:2013-11-19 14:51:47凯迪拉克
日期:2013-12-06 09:40:33奔驰
日期:2013-12-10 08:41:56优秀写手
日期:2013-12-18 09:29:122014年世界杯参赛球队:巴西
日期:2014-06-12 16:34:36
 楼主| 发表于 2009-7-25 23:17 | 显示全部楼层
哈哈 谢谢啦

使用道具 举报

回复
论坛徽章:
183
2008版在线时间
日期:2010-06-01 00:01:32奥运纪念徽章
日期:2013-07-18 13:55:12大众
日期:2013-09-29 21:57:31大众
日期:2013-11-19 14:51:47凯迪拉克
日期:2013-12-06 09:40:33奔驰
日期:2013-12-10 08:41:56优秀写手
日期:2013-12-18 09:29:122014年世界杯参赛球队:巴西
日期:2014-06-12 16:34:36
 楼主| 发表于 2009-7-25 23:26 | 显示全部楼层
Show parameter cache_size
SQL> show parameter cache_size;
NAME                                 TYPE          VALUE
------------------------------------ ----------------------
db_16k_cache_size                    big integer           0
db_2k_cache_size                     big integer           0
db_32k_cache_size                    big integer           0
db_4k_cache_size                     big integer           0
db_8k_cache_size                     big integer           0
NAME                                 TYPE           VALUE
------------------------------------ ----------------------
db_cache_size                        big integer          1577058304
db_keep_cache_size                   big integer           0
db_recycle_cache_size                big integer             0


可是为什么我们一个正式系统的db_*k_cache_size    全是0

使用道具 举报

回复
招聘 : 系统架构师
认证徽章
论坛徽章:
370
秀才
日期:2015-08-13 09:04:39巨蟹座
日期:2015-09-10 09:03:46秀才
日期:2015-09-11 10:43:06摩羯座
日期:2015-09-20 17:10:27秀才
日期:2015-09-21 09:46:16秀才
日期:2015-09-21 11:16:42秀才
日期:2015-10-08 17:57:58天枰座
日期:2015-10-28 18:28:29秀才
日期:2015-11-11 09:48:44巨蟹座
日期:2015-09-09 14:25:25
发表于 2009-7-25 23:32 | 显示全部楼层
if you do not use a different block size tablespace , then you need not set the db_nk_cache_size..

使用道具 举报

回复

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

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表