【发布时间】:2014-06-10 09:40:28
【问题描述】:
当我们创建一些索引作为性能调整的一部分时,
CREATE INDEX index_emp ON emp(eid);
在默认表空间中创建的索引是myTS_D1。当我检查时,一些索引有它们的表空间值
myTs_I1。而且我知道我们应该在创建索引时指定表空间名称。
有什么影响?这是否会产生任何问题,因为其中一些在一个表空间中,而另一些在不同的表空间中。
【问题讨论】:
当我们创建一些索引作为性能调整的一部分时,
CREATE INDEX index_emp ON emp(eid);
在默认表空间中创建的索引是myTS_D1。当我检查时,一些索引有它们的表空间值
myTs_I1。而且我知道我们应该在创建索引时指定表空间名称。
有什么影响?这是否会产生任何问题,因为其中一些在一个表空间中,而另一些在不同的表空间中。
【问题讨论】:
拥有单独表空间的想法是您可以将它们放在单独的物理磁盘上。 例如,也许您有一个快速的 SSD,您想将其用于一些经常访问的索引。或者,您可能希望在多个控制器之间分配磁盘 I/O 以最大限度地提高吞吐量。
除了这个表空间放置有任何性能或操作影响之外,没有任何区别。对于数据库用户(只看到逻辑模式)来说,它看起来是一样的。
【讨论】:
为索引和数据使用单独的表空间does not improve performance,它只会增加更多的复杂性,从而导致更多的问题。您的 DBA 必须管理的表空间和数据文件越多,出错的可能性就越大。
【讨论】: