2016-03-28 90 views
0

在使用SQL Server集成服务我得到警告:SSIS警告包中包含数据流组件的多输入

[SSIS.Pipeline] Warning: The package contains data flow components with 
multiple inputs. Run-time dependencies that exist among these components may 
increase memory usage and reduce performance. Consider removing the dependency 
chain for the following component IDs and output IDs: 382(419) , to improve 
performance. 

这只是一个;我想我在执行的最后一个数据流中收到其中的4个,其中包含不同的ID。

我在某处读到没有办法'搜索'ID,所以我手动浏览了整个数据流,查看了所有组件和底层输入/输出组件。我发现了几个ID,但大多数我没有。这使得难以排除故障,更别说理解这个警告。我找不到关于这个问题的任何事情,Stackoverflow在网络上的任何其他地方。

更新:我浏览了软件包的XML代码(右键单击package.dtsx =>查看代码||菜单:查看=>代码|| F7),但是ID没有在那里列出。摘录:

<outputs> 
       <output 
        refId="Package\Sequence Container A\Data Flow A\Data Flow Source A.Outputs[OLE DB Source Output]" 
        name="OLE DB Source Output"> 
        <outputColumns> 
        <outputColumn 
         refId="Package\Sequence Container A\Data Flow A\Data Flow Source A.Outputs[OLE DB Source Output].Columns[AABB]" 
         codePage="1252" 
         dataType="str" 
         errorOrTruncationOperation="Conversion" 
         errorRowDisposition="FailComponent" 
         externalMetadataColumnId="Package\Sequence Container A\Data Flow A\Data Flow Source A.Outputs[OLE DB Source Output].ExternalColumns[AABB]" 
         length="18" 
         lineageId="Package\Sequence Container A\Data Flow A\Data Flow Source A.Outputs[OLE DB Source Output].Columns[AABB]" 
         name="AABB" 
         truncationRowDisposition="FailComponent" /> 

有人可以解释这个警告意味着什么,如何查找ID,以及如何“删除依赖链”。

谢谢。

+0

您可以在XMLA(代码视图)中搜索ID。 –

+0

我该怎么做?我查看了Package.dtsx的代码,但我找不到任何有意义的ID或警告中的ID(例如382)。谢谢 – jbr870

+0

不幸的是,我没有2014年的服务器,但似乎你的xmla格式与我的很不一样。我会留下我的答案,以防止其他人使用旧版本的SQL Server/SSIS。 –

回答

0

当您在Visual Studio中打开包时,可以拉下视图菜单,然后单击“代码”。这将带您到您的软件包的XMLA代码。

ID是代码中各种xml元素的ID属性。这是从我的包之一一些示例代码:

<output id="122" name="OLE DB Destination Error Output" description="" exclusionGroup="1" synchronousInputId="121" deleteOutputOnPathDetached="false" hasSideEffects="false" dangling="false" isErrorOut="true" isSorted="false" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed"><outputColumns> 
<outputColumn id="123" name="ErrorCode" description="" lineageId="123" precision="0" scale="0" length="0" dataType="i4" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="1" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0"/> 
<outputColumn id="124" name="ErrorColumn" description="" lineageId="124" precision="0" scale="0" length="0" dataType="i4" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="2" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0"/></outputColumns><externalMetadataColumns isUsed="False"/></output> 
</outputs> 
</component> 
<component id="196" name="Script Component" componentClassID="{2E42D45B-F83C-400F-8D77-61DDE6A7DF29}" description="Executes a custom script." localeId="-1" usesDispositions="false" validateExternalMetadata="True" version="4" pipelineVersion="0" contactInfo="Executes a custom script.;Microsoft Corporation; Microsoft SqlServer v10; © 2007 Microsoft Corporation; All Rights Reserved; http://www.microsoft.com/sql/support;4"> 
<properties> 
<property id="200" name="SourceCode" 

您可以用ctrl-F来搜索该代码。我会开始寻找id="382"id="419"

+0

感谢您的回答,Tab。不幸的是,我这样做了,没有找到 jbr870

+0

你可以添加你的包的xmla代码到你的问题吗 –

+0

我添加了一个摘录;所有的代码可能有点但是没有类似你的代码,就好像他们认为字符串对于XMLA代码是足够好的,但对于错误/警告消息是不够的 – jbr870

相关问题