索引负面影响测试
来源:互联网 发布:http aq.qq.com js 编辑:程序博客网 时间:2024/06/05 05:11
什么是索引
索引是为了提供更好的查询性能,通过更少的IO查找同样的数据,索引的性能参照就是全表扫描,oracle按照执行计划在表中查找数据只有全表扫描和索引这两种方式,这两种方式没有好坏之分,只有适不适合
索引负面影响
1,索引要额外占据存储空间,这个额外空间并不小
SQL> create table test as select * from dba_objects;Table created.SQL> create index idx_test_name on test(object_name);Index created.SQL> select segment_name,segment_type,bytes,blocks from user_segments where segment_name in('TEST','IDX_TEST_NAME');SEGMENT_NAME SEGMENT_TYPE BYTES BLOCKS------------------------- ------------------ ---------- ----------IDX_TEST_NAME INDEX 3145728 384TEST TABLE 9437184 1152如果test是压缩表,那索引占据的空间跟表就差不多了
2,对DML操作有影响,DML操作如果涉及到索引列,在表中数据更新的同时,索引也会产生维护操作
SQL> truncate table test;Table truncated.Elapsed: 00:00:00.42SQL> insert into test select * from dba_objects; //无索引 插入72040 rows created.Elapsed: 00:00:00.39Statistics----------------------------------------------------------781 recursive calls 9987 db block gets 3840 consistent gets 2 physical reads 8421032 redo size843 bytes sent via SQL*Net to client798 bytes received via SQL*Net from client 3 SQL*Net roundtrips to/from client 2 sorts (memory) 0 sorts (disk) 72040 rows processedSQL> commit;Commit complete.Elapsed: 00:00:00.02SQL> create index idx_test_name on test(object_name); //创建索引Index created.Elapsed: 00:00:00.15SQL> truncate table test;Table truncated.Elapsed: 00:00:00.46SQL> insert into test select * from dba_objects; //有索引 插入72041 rows created.Elapsed: 00:00:01.36Statistics---------------------------------------------------------- 1497 recursive calls 87825 db block gets 6116 consistent gets 5 physical reads 29216072 redo size843 bytes sent via SQL*Net to client798 bytes received via SQL*Net from client 3 SQL*Net roundtrips to/from client 1 sorts (memory) 0 sorts (disk) 72041 rows processedSQL> commit;Commit complete.Elapsed: 00:00:00.00这个表上只有一个索引,性能差距如此明显,如果再加一个索引,性能耗费成倍上升
使用索引不一定总是能提升查询性能,在索引的使用上不能只考虑个别查询性能上的提升,毕竟数据库性能的提升是多方面综合的结果。
0 0
- 索引负面影响测试
- 负面影响的情绪
- 关于索引的测试!
- ORACLE 索引测试
- 索引整理方式测试
- mysql索引测试案例
- mysql索引测试
- Hive索引功能测试
- 索引的效果测试
- 索引-数据测试
- mysql索引总结----索引使用测试
- mysql索引总结----索引使用测试
- mysql索引创建以及索引使用测试
- 人民币快速升值负面影响不可小视
- 不容忽视友情链接对网站收录的负面影响
- 经济危机对生活搜索有负面影响?
- 技术的不断革新也有负面影响
- css清除浮动带来的负面影响
- 访问子类对象实例变量
- PHP的json_encode处理中文
- 微信开发专题---1.注册微信平台账号
- Ubuntu16.06 git with socks proxy
- 自旋锁(Ticket,CLH,MCS)
- 索引负面影响测试
- 安鑫 对不起,我们必须辞退你
- ios自学经验
- 关于报错:Attempt to invoke virtual method 'int Android.view.View.getImportantForAccessibility()'
- android framework添加系统服务
- POJ1012
- VIVO手机上del键无效OnKeyListener不响应问题
- 叶俊:从一匹马的电影读懂人才管理与商业经营
- cocoapods安装pod setup error解决方法