最近在学oracle调优,目前了解的技术只是初始化参数、索引、提示等几个方面。主要是针对大数据量的并/交/差运算。
现在我是用JDBC进行测试,采用普通的statement和prepareStatement两种进行比较,针对10万条数据量的表和200万数据量的表进行测试后发现,预编译方式只在insert时占优势,在join和集合运算时却不及普通sql,不知道是什么原因,以上测试都是在同等环境下进行的。
  希望调优高手指教,另外请教有关分布式集合运算的调优思想,谢谢!

解决方案 »

  1.   

    浅答:
    数据量再多点,你的表怎么样的,调优最好针对具体情况.否则就很笼统了.
    上百万数据oracle几秒钟就能搞定了,而且你的表有索引的话,表连接上可能更加不明显了.
      

  2.   


    相对于statment来说preparestatment更有性能效率的是,preparedstatmenet是可以绑定参数的,这点上来说是有性能优势,至少软parse更好一些。但是数据库性能是个综合性的分析,单单某个点上的提高,并不代表就优化了。
      

  3.   

    表是很简单的,字段包含了常见的几种数据类型,目前所做的优化主要是SQL上的,比如,SELECT和WHERE后的字段建索引、字段的先后排列顺序、约束的排列顺序、索引合并提示、索引存储空间等,初始化参数的优化还未调整。
      

  4.   

    绑定变量如果在高并发的情况下,才显现出优势来,因为这样sharedpool竞争减小.并且减少大量的硬解析成本.
      

  5.   

    看情况,在学调优前多看几遍CONCEPT会好点
    不了解运行机制的情况下学习很盲目