我们拥有超过1000个平面文件,每个平面文件有大约一百万条记录。我们需要将所有这些数据插入到数据库的单个表中,并且无法对表进行分区。我们正在尝试使用SSIS实现并行处理,我们希望使用SSIS运行多个批量插入进程,以便将平面文件中的数据同时插入到一个表中。平面文件中的插入顺序也无关紧要。 我们有一个带有MULTIPLEFLATFILE连接管理器的SSIS包,其中包含一个flatfile任务和一个OLE DB目标任务,其中包含'快速加载'和表锁选项已选中。有了这个,我们看到只有一个SPID用于将数据插入表中。我们希望至少有5个SPID /进程同时/并行插入表中。请帮助我。
由于
答案 0 :(得分:0)
要获得插入的最大性能,您需要使用OLE DB Destination并在那里指定Fast Load选项(在下拉列表中),然后选中Table Lock。这将使数据最快地进入表中。但是,您现在将被迫进入串行加载。
要使并行加载运行,您需要将每个线程加载到其自己的表中,然后在最后执行sql任务将所有数据合并到最终目标中。除了简单的元数据操作之外,合并分区的基本相同的逻辑,你将移动数据两次。