在数据加载之前或之后创建Oracle SQL索引更好吗?

Ati*_*nch 5 database oracle indexing

我需要在Oracle数据库上填充一个包含大量数据(加载数小时)的表,我想知道哪个更快,在加载之前或加载之后在表上创建索引.我最初认为在索引表上插入会受到惩罚,但如果我使用完整表创建索引,则需要花费很多时间.哪个最好?

Thi*_*ilo 12

加载数据后创建索引要快得多.如果将数据加载到带索引的表中,由于常量索引更新,加载将非常缓慢.如果您稍后创建索引,它可以只有一次有效填充(这可能需要一些时间,但总计应该更小).

类似的逻辑适用于约束.也可以在以后启用它们(除非您希望数据不通过约束并希望尽早知道).