Ssis 红移ODBC错误

Ssis 红移ODBC错误,ssis,odbc,amazon-redshift,Ssis,Odbc,Amazon Redshift,我正在使用红移ODBC 32位驱动程序通过SSIS 2015 ODBC连接提取SQL-2016中的数据。我有大量的数据要从红移加载。我在21分钟内加载了大约10000000条Reocrds 但是,我的历史表有260636061条记录。如果我运行包来加载所有数据,那么它会运行一段时间并抛出以下错误- [ODBC源[2]]错误:发生开放数据库连接(ODBC)错误。注明:“HY000”。本机错误代码:30。[Amazon][RedShift ODBC](30)尝试执行查询时出错:服务器意外关闭了连接。

我正在使用红移ODBC 32位驱动程序通过SSIS 2015 ODBC连接提取SQL-2016中的数据。我有大量的数据要从红移加载。我在21分钟内加载了大约10000000条Reocrds

但是,我的历史表有260636061条记录。如果我运行包来加载所有数据,那么它会运行一段时间并抛出以下错误-

[ODBC源[2]]错误:发生开放数据库连接(ODBC)错误。注明:“HY000”。本机错误代码:30。[Amazon][RedShift ODBC](30)尝试执行查询时出错:服务器意外关闭了连接。这可能意味着服务器在处理请求之前或处理请求时异常终止。

[ODBC源[2]]错误:发生开放数据库连接(ODBC)错误。声明:“HY001”。本机错误代码:10010。[Amazon][ODBC](10010)内存分配错误:捕获到std::bad_alloc异常。

[SSIS.Pipeline]错误:SSIS错误代码DTS\u E\u PRIMEOUTPUTFAILED。ODBC源上的PrimeOutput方法返回错误代码0x80004005。当管道引擎调用PrimeOutput()时,组件返回了故障代码。故障代码的含义由组件定义,但错误是致命的,管道停止执行。在此之前可能会发布错误消息,其中包含有关故障的更多信息。

你知道如何解决这个问题吗?或者我们不应该一次从SSI中提取这么多数据吗


多亏了

驱动程序可能试图一次将所有结果行加载到内存中,而理想情况下,它会成批发送行,从而允许SSI一次处理一批

请尝试按照使用ODBC驱动程序上的选项,看看哪些选项有效

您的驱动程序是否在服务器上设置为DSN,或者是否有可以直接与之通信的SSIS源?如果是DSN,您将看到一个“附加选项”面板,如下所示,您可以使用该面板:


如果是SSIS源,这些选项可能在SSIS中的连接管理器上可用。

从postgres数据库加载时,SSIS出现了相同的错误,这也为我解决了这个问题。