有几篇博客声称将SSIS转换分为阻塞(异步),非阻塞(同步)和部分阻塞(异步)。
在研究特定问题时:多播是同步的(非阻塞)还是异步的(部分阻塞)?
一种资源声称异步:“多播是异步(也称为部分阻止)转换” 源:http : //social.technet.microsoft.com/wiki/contents/articles/7392.ssis-multicast-transformation.aspx
另一个同步:https ://jorgklein.com/2009/04/14/ssis-lookup-is-case-sensitive/
其他资源声称DQS清理转换是非阻塞转换,但在我看来,它是部分阻塞的。
请不要回答按类型分类的转换列表的链接。希望该问题的答案能够提供更严格的方法来证明正确的答案。
由于部分阻塞和阻塞转换会将数据移动到新的缓冲区,而不是在适当的缓冲区上进行非阻塞操作,因此我怀疑解决方案将是在转换执行期间监视缓冲区的创建,但我不确定(a )是否会产生明确的答案,以及(b)怎么做。
我相信无阻塞转换不会导致新的执行树开始,因此答案可能在于记录PipelineExectionTrees和PipelineExecutionPlan。这可以区分同步和异步,但不能区分部分阻塞和完全阻塞。