首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

(转)深入研究B树目录(五)续

2012-11-05 
(转)深入研究B树索引(五)续5.3重建B树索引对于查询性能的影响重建之前的成本:1个根+1个分支+1个叶子+1个表

(转)深入研究B树索引(五)续

5.3重建B树索引对于查询性能的影响

重建之前的成本:1个根+1个分支+1个叶子+1个表块=4个逻辑读

重建之后的成本:1个根+1个分支+1个叶子+1个表块=4个逻辑读

性能提高百分比:0

最差的clustering_factor(即该值等于表的数据行数):

重建之前的成本:1个根+1个分支+0.0001*10000(1个叶子)+100个表块=103个逻辑读

重建之后的成本:1个根+1个分支+0.0001*5000(1个叶子)+100个表块=102.5个逻辑读

性能提高百分比:0.5%(也就是减少了0.5个逻辑读)

最好clustering_factor(即该值等于表的数据块):

重建之前的成本:1个根+1个分支+0.0001*10000(1个叶子)+0.0001*100000(10个表块)=13个逻辑读

重建之后的成本:1个根+1个分支+0.0001*5000(1个叶子)+0.0001*100000(10个表块)=12.5个逻辑读

性能提高百分比:3.8%(也就是减少了0.5个逻辑读)

最差的clustering_factor(即该值等于表的数据行数):

重建之前的成本:1个根+1个分支+0.01*10000(100个叶子)+10000个表块=10102个逻辑读

重建之后的成本:1个根+1个分支+0.01*5000(50个叶子)+10000个表块=10052个逻辑读

性能提高百分比:0.5%(也就是减少了50个逻辑读)

最好clustering_factor(即该值等于表的数据块):

重建之前的成本:1个根+1个分支+0.01*10000(100个叶子)+0.01*100000(1000个表块)=1102个逻辑读

重建之后的成本:1个根+1个分支+0.01*5000(50个叶子)+0.01*100000(1000个表块)=1052个逻辑读

性能提高百分比:4.5%(也就是减少了50个逻辑读)

最差的clustering_factor(即该值等于表的数据行数):

重建之前的成本:1个根+1个分支+0.1*10000(1000个叶子)+100000个表块=101002个逻辑读

重建之后的成本:1个根+1个分支+0.1*5000(500个叶子)+100000个表块=100502个逻辑读

性能提高百分比:0.5%(也就是减少了500个逻辑读)

最好clustering_factor(即该值等于表的数据块):

重建之前的成本:1个根+1个分支+0.1*10000(1000个叶子)+0.1*100000(10000个表块)=11002个逻辑读

重建之后的成本:1个根+1个分支+0.1*5000(500个叶子)+0.1*100000(10000个表块)=10502个逻辑读

性能提高百分比:4.5%(也就是减少了500个逻辑读)

重建之前的成本:(1个根+40个分支+10000个叶子)/ 8=1256个逻辑读

重建之后的成本:(1个根+40个分支+5000个叶子)/ 8=631个逻辑读
性能提高百分比:49.8%(也就是减少了625个逻辑读)

        然后运行测试语句,记录每条查询语句所需的时间;接下来以pctfree为10%重建索引,来模拟修复索引碎片,分析并记录索引信息。

          接着再次运行这些测试语句,记录每条查询语句所需的时间。下表显示了两个索引信息的对比情况。

          下表显示了不同的索引下,运行测试语句所需的时间对比情况。

          记录数

          占记录总数的百分比

          pctused(50%)

          pctused(90%)

          性能提高百分比

          1条记录

          0.0001%

          0.01

          0.01

          0.00%

          100条记录

          0.0100%

          0.01

          0.01

          0.00%

          1000条记录

          0.1000%

          0.01

          0.01

          0.00%

          10000条记录

          1.0000%

          0.02

          0.02

          0.00%

          50000条记录

          5.0000%

          0.06

          0.06

          0.00%

          100000条记录

          10.0000%

          1.01

          1.00

          0.99%

          1000000条记录

          100.0000%

          13.05

          11.01

          15.63%

          1000000条记录(FFS)

          100.0000%

          7.05

          7.02

          0.43%

                SQL>?update?rebuild_test_cf?set?name=get_reverse_value(id);??

热点排行