我正在寻找在SSIS上排序约200万条记录的替代方案。
在应用多次转换后,来自异构源(SQL,Oracle,DB2)的数据,有一个Union All来组合数据,然后需要按三个字段排序。
这是因为在我们发送给外部供应商之前,数据需要按某些字段进行排序
这些是我已经尝试过的解决方案:
这些都没有显着提高性能。
还有其他选择吗?
更新: 这是三个不同字段的字符串排序,属于三个不同的DB表(SQL,Oracle,DB2)。在数据集合并之前,我无法排序。
答案 0 :(得分:0)
使用MERGE
转换代替UNION ALL
:
不是首先使用UNION ALL
组合数据集,然后对生成的大型组合数据集进行排序,而是首先对每个较小的集合进行排序,然后使用MERGE
转换。 MERGE
转换的结果已经排序。