现状:一个表空间中存放了两个相互独立的表TBA,TBB。客户端100个同时作业,其中80个使用TBA,其余人使用TBB。
问题1:将两表放在同一表空间是否会影响性能?如果将两表拆到两个表空间是否会提高效率?大概能提高多少?
问题2:用alter table TBA move tablespace  DBSPACENAME;这样的语句移动了表到指定表空间,那么表TBA对应的索引、触发器、序列等是否也被移动到了目的表空间?还是索引、触发器、序列等根本就与表空间没有关系?没系统学过ORA,请知情人士赞助,不胜感激。

解决方案 »

  1.   

    在磁盘的IO优化方面,如果你有5个独立的磁盘,A,B,C,D,E;你可以将数据存放磁盘C,D,E上,将表的缩影存放到A,B上;
    那你上面的两张表举例:
    可以考虑建立索引表空间IDX_A,IDX_B,IDX_C,IDX_D,IDX_E,
    建立数据存储表空间DATA_A,DATA_B,DATA_C,DATA_D,DATA_E,
    在对应的A,B,C,D,E磁盘上;
    假设更具你的的访问量中,TBA数据量比较大。
    让后将表TBA 缩影建立在IDX_A,IDX_B上,将数据存放到DATA_C,DATA_D,DATA_E上;
    将表TBB的缩影存放到IDX_C,IDX_D,IDX_E上,数据存放到DATA_A,DATAB上。