我现在遇到了一个奇怪的问题
我有4个source tables,大概每个table 有10000个sample数据
中间过程的view 大概有15个左右
我的最终输出是用的4个view,
其中有个view,因为是给高级search 用的
所以反复join了很多其他的view很多遍
现在遇到了一个很奇怪的performance 问题,
当我执行一个query, 返回记录小于15到20个的时候,这个view 速度非常快 <1秒
但是当这个query的返回记录大于这个数值时候, 整个view 的速度很慢 大概会在300 秒左右我想问一下,这个问题有哪位高手可以解决一下,如果是升级硬件可以解决的话,那么就不是我的事情了
还有,我不可以在数据库里面加入任何的table,因为客户要求live 数据

解决方案 »

  1.   

    中间过程的view 大概有15个左右 
    我的最终输出是用的4个view, 
    ===============================
    不用View试试
      

  2.   

    说的太散,表结构、表中的数据、执行的sql、sql的执行计划等等,这些信息都没给出来。我纯接分
      

  3.   

    那么你的表到底是怎么样的啊?怎么创建各个索引的?View又是怎么建的?又是怎么Join的?讲详细点么。不知道一楼、二楼的人看出来没有,这个问题超难啊!
      

  4.   

    将shared_pool_size设置为300M后,再试试。