首页 文章

使用SSIS 2005加载非常大的表

提问于
浏览
0

我有一个问题 . 我正在加载一个非常大的表,其中包含1.5亿条记录的现有数据,这些数据将继续增加,每天增加100万条记录 . 几天后ETL开始失败,即使在运行之后也是如此24小时在DFT中,我们有源查询提取100万条记录,这些记录是针对具有1.5亿条记录的目的地表进行查找,以检查新记录 . 它失败了,因为LOOKUP无法保存1.5亿条记录的数据 . 我已经尝试将LOOKUP更改为Merge Join但没有成功 . 您能否建议其他设计成功加载大表中的数据 . 而且,我无法减少目标表的大小 . 我已经在所有必需的列上有索引 . 希望我能解释这个场景 .

2 回答

  • 0

    您可以尝试使用表分区来导入大量数据 . 看看here的例子 . 另一个可能有用的link . 另外,请检查msdn以获取有关创建和维护分区表的更多信息 .

  • 0

    将旅程分成两部分 .

    创建新的数据流任务(或单独的包),以便在靠近目标数据库的环境中“按原样”暂存源表

    更改现有的数据流任务,以便在您的分阶段表和目标表中进行查询,以仅提取新的(和已更改的?)记录,并在SSIS中相应地处理这些记录 . 这应该消除了对每个记录执行往返数据库的昂贵查找的需要

相关问题