什么时候是在Oracle中创建索引的正确时机?

什么时候是在Oracle中创建索引的正确时机?,oracle,indexing,database-performance,Oracle,Indexing,Database Performance,以Oracle作为数据存储的全新应用程序将在生产中推出。数据库使用CBO,我已经确定了一些列来进行索引。我预计6个月后,特定表中的记录总数将达到400万条。在此之后,将添加很少的记录,并且索引列的记录中不会有任何更新。我的意思是,大多数更新都将在非索引列上进行 建议现在创建索引吗?或者我需要等待几个月?如果表需要索引,那么在表中的行数超出缓存可以合理保留的范围后,您将导致大量性能低下(完整表扫描+实际I/O)。假设是20000行。我们称之为神奇数字。你在一周的生产中达到20000行。之后,随着行

以Oracle作为数据存储的全新应用程序将在生产中推出。数据库使用CBO,我已经确定了一些列来进行索引。我预计6个月后,特定表中的记录总数将达到400万条。在此之后,将添加很少的记录,并且索引列的记录中不会有任何更新。我的意思是,大多数更新都将在非索引列上进行


建议现在创建索引吗?或者我需要等待几个月?

如果表需要索引,那么在表中的行数超出缓存可以合理保留的范围后,您将导致大量性能低下(完整表扫描+实际I/O)。假设是20000行。我们称之为神奇数字。你在一周的生产中达到20000行。之后,随着行的增加,表上的查询和更新平均会逐渐变慢

您可能担心插入带有索引字段的新行的开销。这是一次成功。当您延迟添加索引时,您将面临数十个查询和更新的交易


这种折衷在很大程度上有利于现在增加指数。特别是因为我们不知道这个神奇的数字(20000?)到底是什么。可能更大。或更小

如果表需要索引,那么在表中的行数超出缓存中合理保留的行数后,将导致大量性能低下(完整表扫描+实际I/O)。假设是20000行。我们称之为神奇数字。你在一周的生产中达到20000行。之后,随着行的增加,表上的查询和更新平均会逐渐变慢

您可能担心插入带有索引字段的新行的开销。这是一次成功。当您延迟添加索引时,您将面临数十个查询和更新的交易


这种折衷在很大程度上有利于现在增加指数。特别是因为我们不知道这个神奇的数字(20000?)到底是什么。可能更大。或更小

看不到延迟索引创建的任何原因您使用的是哪个Oracle版本?看不到延迟索引创建的任何原因您使用的是哪个Oracle版本?