MSSQL创建和加载数据

时间:2016-11-25 09:56:48

标签: sql-server loading

我有兴趣听到其他开发人员关于创建和加载数据的观点,因为我正在处理的当前网站对DWH加载有着完全不同的看法。

目前用于加载事实表的协议有许多步骤;

  1. 放弃旧桌子
  2. 重新创建没有PK /聚集索引的表
  3. 加载已清理/新数据
  4. 创建PK&索引
  5. 我想知道第4步有多少工作真正发生了?加载的数据没有Clusterd索引,所以我假设数据加载的自然顺序定义了它在磁盘上的顺序。当步骤4创建主键(群集)时,它将按顺序将磁盘上的数据重新排序。加载数据并且已经定义了PK / Clustered Index从而减少服务器工作量是不是更好?

2 个答案:

答案 0 :(得分:0)

inserting大量记录时,更新索引的开销通常比从头创建简单大。性能增益来自inserting到堆上,这是将数据放入表中的最有效方法。

在索引保持不变的情况下,您可以知道导入策略是否更快的唯一方法是在您自己的环境中进行测试并进行比较。

答案 1 :(得分:0)

根据我的想法,索引器适合选择。并且可能对DML操作不利。

如果您要加载大量数据,则意味着您需要为每个插入更新Indexers。这可能会落后于性能。有时它可能超出限制。