摘要:clustering factor通过前面的介绍我们发现index的clustering factor对于index的range scan的cost有很大的影响,从理念上,使用一个数字来描述表相对于索引的数据分布情况是很有效而且很有创造性的,但在我们的实际应用中clustering factor有时候发存在一些问题,我们发现clustering factor有时候(甚至经常)不能真实的index ...
阅读全文
文章分类 - cbo
摘要:clustering factor通过前面的介绍我们发现index的clustering factor对于index的range scan的cost有很大的影响,从理念上,使用一个数字来描述表相对于索引的数据分布情况是很有效而且很有创造性的,但在我们的实际应用中clustering factor有时候发存在一些问题,我们发现clustering factor有时候(甚至经常)不能真实的index ...
阅读全文
摘要:cost of b-tree access这一节我们看看CBO是如何来计算最普通的b-tree索引的访问的cost的。我们知道B-tree索引的结构是一个树状结构,索引中包括root block,branch block, leaf block,这些结构分别相当与树的根,茎和叶。当我们使用一个索引的时候,我们首先访问索引的root block,确定需要访问大branch block。然后选择需要访...
阅读全文
摘要:实验3如果我们把我们的条件改成范围查询呢?select count(*) from audiencewhere month_no >8;Execution Plan----------------------------------------------------------0 SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=...
阅读全文
摘要:selectivityselectivity是Oracle的CBO中比较重要的一个概念。和selectivity经常一起提到的一个概念是cardinality,其实这两个概念的本质上是一样的。selectivity是指一个SQL操作的得出结果集占原来结果集的百分比,而cardinality就是指一个SQL操作的得出结果集的行数,CBO是通过selectivity来计算cardinality的,也就...
阅读全文
摘要:http://hi.baidu.com/richard%5Fcxs/blog/item/04c75e0923348cad2eddd449.htmlfull tablescan and CPU Cost这里我们看一下Oracle9i里面的CBO是如何使用system statistics的,重点看一下CBO如何计算CPU cost。我们前面介绍过oracle8i的CBO的一些缺点(参考:http:/...
阅读全文
摘要:http://hi.baidu.com/richard%5Fcxs/blog/item/7c3398510618a61a367abe49.htmltablescan 之 不同block size的影响tablescan 之 不同block size的影响前面我们知道Oracle的CBO会根据操作系统的信息适当的调整db_file_multiblock_read_count的值,具体的测试结果如下 ...
阅读全文
摘要:http://hi.baidu.com/richard%5Fcxs/blog/item/867c21234855764c92580748.html关于tablescan 之 自调整的db_file_multiblock_read_count今天打算超额完成任务。闲言碎语不要讲,来做个实验先!--这个实验是CBO fundamentals里面的。首先我的实验环境是Oracle 9.2.0.4,blo...
阅读全文
摘要:http://hi.baidu.com/richard%5Fcxs/blog/item/5ae2f9c80979d6157e3e6f4e.html什么是COST?1. 关于CBO,我们都知道CBO是optimizer based on cost,我们很清楚optimizer是什么,based是什么,On是什么,但问题是:cost是什么?在Oracle8i里面,一条语句的cost基本上代表着Orac...
阅读全文
|