Sql server SQL Server 2000:删除和插入大量数据

Sql server SQL Server 2000:删除和插入大量数据,sql-server,sql-server-2000,Sql Server,Sql Server 2000,我们有一个SQL Server 2000,它有大约6000000条记录。其中一列存储了pdf文件 问题是,我们每个月都会删除大约250000条记录,并在特定日期插入大约250000条记录。之后没有更新,只有读取 问题是:删除500条记录,然后插入500条记录,然后删除,然后插入,然后删除,然后插入,这样做是否最佳 或者一次删除250000,然后在500批次中插入250000 哪种选择是最佳的?有最好的内存管理吗 +1对于任何向我指出MSDN文章或其他内容的人 < P> < P>您可能需要考虑分

我们有一个SQL Server 2000,它有大约6000000条记录。其中一列存储了pdf文件

问题是,我们每个月都会删除大约250000条记录,并在特定日期插入大约250000条记录。之后没有更新,只有读取

问题是:删除500条记录,然后插入500条记录,然后删除,然后插入,然后删除,然后插入,这样做是否最佳

或者一次删除250000,然后在500批次中插入250000

哪种选择是最佳的?有最好的内存管理吗


+1对于任何向我指出MSDN文章或其他内容的人

< P>

< P>您可能需要考虑分区。如果您将其组织起来以便一次只删除一个分区,那么删除将花费毫秒。请参见

,因为您没有提到这一点。值得强调的是,在rdbms上插入/删除/更新任何大量数据的标准做法是:在应用更改之前删除所有索引,然后重新应用它们

这有两个原因

  • 系统一次重建索引比按记录重建索引更快(磁盘上的磁头移动更少)

  • 如果从头开始重建索引,则后续使用它的访问可能会更快,因为索引树可能会更好地平衡


  • 在这种情况下,您如何定义“最佳”呢?