现在有一张表,数据有500W以上,即使加index了,但是查询效率还是很不满意。
问了朋友,说是加物化视图或者做分区表格【分区表能提高查询效率?】
我先走纠结要怎么做调高效率。谁比较有经验的能详细介绍一下我该用什么解决方法?
还有索引还可以怎么优化,我先走只是加普通的索引而已。麻烦详细说下,我是Oracle菜鸟。。
问了朋友,说是加物化视图或者做分区表格【分区表能提高查询效率?】
我先走纠结要怎么做调高效率。谁比较有经验的能详细介绍一下我该用什么解决方法?
还有索引还可以怎么优化,我先走只是加普通的索引而已。麻烦详细说下,我是Oracle菜鸟。。
2.oracle的执行计划,会根据你实际的环境选择合适的执行计划,是选择的(rbo or cbo),会根据你的表是否包含了统计信息的来选择,这个时候你就只需要analyze table tablename compute statistics分析下表
3.使用分区表的确是种很好的提高效率的办法,他使得以前的一次性取数据变为了多个进程并行查找,效率肯定是不言而喻的,不过的这是需要有代价的,你必须指定你的数据在不同的表空间,最好在不同的磁盘。
4.目标表上面最好不要建立过多的索引,这样减低你的更新操作的性能,建议使用hints方式,代替。