我在SSIS中有一个父程序包,该程序包的每个循环容器都按顺序执行2个子程序包。连接值作为参数传递到子程序包。子程序包动态连接到平面文件源,并使用派生列将NULL替换为\ N,最后将其加载到SQL Server目标中。平面文件源的总大小为3GB。 for-each循环在第一次迭代中执行,但在第二次迭代中失败。我收到缓冲区分配失败的错误消息。
错误消息 系统报告内存负载为85%。有32767590400字节的物理内存和4636983296字节可用。有4294836224字节的虚拟内存,其中362987520字节可用。分页文件有43437899776字节,其中有13638811648字节可用。
“数据流”任务未能创建一个缓冲区来调用组件“平面文件源输出”(27)上的输出“平面文件源”(23)的PrimeOutput。此错误通常是由于内存不足情况引起的。
内存压力得到缓解,缓冲区管理器不再限制分配 (在缓冲区调整日志中)
我将默认缓冲区大小从10 MB更改为50 MB,并将默认缓冲区最大行从10000更改为50000。还将大于100MB的文件的每批行更改为10000。
我仍然面临着同样的问题。谁能帮我解决这个问题?
谢谢, 阿比舍克