SQL Server:使用聚簇索引导入大数据

时间:2019-04-22 04:00:29

标签: sql sql-server bulkinsert clustered-index

从性能角度来看,当在表中批量插入数亿行时,聚集索引是否有用?

LE:在插入之后,我必须将数据库投入生产,因此我将不得不创建一个或多个索引。

2 个答案:

答案 0 :(得分:0)

聚集索引指定数据在数据页上的顺序。

在插入数据时,必须对新数据进行排序并将其与现有值进行比较。这会产生开销。

一个例外是当您有一个标识列-在插入过程中生成。然后数据库知道新数据在表的“末尾”。

答案 1 :(得分:-1)

索引用于加快对行的检索( SELECT )。它们仅对 INSERT DELETE UPDATE 具有反作用。而且,在您的情况下,如果INSERT是系统中要执行的主要操作,则根本不要使用索引。即使在您的生产系统中,也要评估检索操作和插入/更新操作之间的比率,如果事实证明检索操作将占主导地位,那么您就可以想到索引。

注意:每当我们在表上定义主键时,就已经为该表创建了基​​本索引结构。因此,无需任何特定的检索优化需求,就不需要设计和实现索引。

您可以在此处了解更多信息:https://www.geeksforgeeks.org/sql-indexes/