【问题标题】:SSIS not running in parallel with OraOLEDB.Oracle.1 ProviderSSIS 未与 OraOLEDB.Oracle.1 提供程序并行运行
【发布时间】:2019-02-25 06:18:45
【问题描述】:

我们有一个带有 Oracle 11 客户端的 SSIS 包,我们将运行每天 30 分钟到 1 小时的查询。

我们必须升级我们的预言机客户端,因为我们的其他预言机源之一升级了。

升级到 Oracle 12c 后,我们的日常作业运行时间增加了。 oracle DBA 说,它不是并行运行的,因为它只占用一个处理器。

当我们从 SQL Developer 或 toad 运行相同的查询时,它会并行运行。但如果我们从 SSIS OLEDB Source 组件运行,它不会并行运行。

我对这种行为不太了解。任何解决方案都会有所帮助。 如果需要,请向我询问更多说明。

【问题讨论】:

  • 为什么忽略提供的答案,如果它解决了问题或者你同意你必须赞成或接受它,否则你应该发表评论以与回答者详细说明

标签: oracle ssis parallel-processing oledb oracle12c


【解决方案1】:

试图找出问题

我试图搜索这个主题,我没有找到很多信息,但我认为它是基于 OLEDB 连接管理器中提供的 OLEDB 连接字符串。

查看以下 Oracle 文档,它可能会给您一些见解:

在上面的链接中,在 Distributed Transactions 部分,他们提到:

DistribTX 属性指定是否启用会话以加入分布式事务。有效值为0(禁用)和1(启用)。默认值为 1,表示为分布式事务登记启用会话。

为分布式事务登记启用的会话无法运行使用直接路径加载和 Oracle 数据库的并行 DML 功能的语句。此类语句作为常规路径串行语句执行。

我不确定这是否有帮助,但尝试一下也不错。


Oracle Attunity 连接器

与其使用 OLEDB Source 从 oracle 中读取数据,不如使用 Oracle Attunity Connectors for SSIS 来保证比 OLEDB Source 更高的性能:

Attunity 的 Oracle 和 Teradata 高速连接器已被 Microsoft 选择包含在 SQL Server Integration Services (SSIS) 中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 2021-01-04
    • 1970-01-01
    • 2015-07-18
    • 2012-10-05
    相关资源
    最近更新 更多