1

在我们的应用程序(基于 Oracle)中,我们正在处理大量数据。对于少数主要表,我们使用单独的表空间,但对于其余表,使用默认表空间。

我的疑问是,

一个。为每个表(记录数超过百万)拥有单独的表空间是否好(在性能方面)
b。或者我们可以为剩余的表定义一个单独的表空间而不是默认表空间。
C。如果默认表空间用于大容量表,是否会影响性能?

任何建议将不胜感激。

4

2 回答 2

2

通常现在您的表空间没有专用磁盘,数据存储在存储网络 (SAN) 中,并且您与物理文件系统没有任何固定关系。因此,表空间的分布不像早期那样敏感或关键 - 只要您没有非常特殊非常大的数据。

例如,我有一个应用程序,我每天都会获得大约 10 亿条记录,即 app。150GB。在那里,我为每个日常分区使用一个表空间(即 150 个循环表空间)。主要原因是更容易维护,例如截断旧数据。

于 2014-08-23T19:29:45.797 回答
1

SAN 似乎已经扼杀了这场争论,但是,当您考虑诸如本地管理的表空间之类的事情时,有一种趋势是使用这些来让表继承存储属性。例如,现在很常见的是像 LM_SMALL_TABLE、LM_MEDIUM_TABLE、LM_LARGE_TABLE(索引类似)或 LM_16k_TABLE、LM_1M_TABLE、LM_10M_TABLE、LM_100M_TABLE 和索引类似的表。这些将初始和下一个范围设置为 16k、1m 等。然后将表放置在适合预期卷的表空间中。您有时会看到通过将表/分区移动到此类表空间来将存档/只读数据移动到更便宜的磁盘的数据库。我唯一一次看到每个表有 1 个表空间是在 8i 上,客户希望有这个,以便可以将特定表恢复到备份,

于 2014-08-23T20:38:50.537 回答