我正在为SSIS CDC组件的使用做一个概念证明。
对于初始加载:到目前为止,我得到的是
步骤1: CDC控制任务与CDC控制操作为:标记初始加载开始步骤2:将所有源记录加载到目标的数据流步骤3: CDC控制任务与CDC控制操作为:标记初始加载结束(步骤1中CDC设置的其余部分)
当我第一次跑步的时候...所有数据加载正常。如果运行相同的命令...取而代之的是不选择任何记录(源不变) ...它会再次重新加载所有记录。复制中。
这样做不会检入在步骤1中创建的CDC状态表。
任何人都可以给我指出好的样本或教程将是伟大的。
发布于 2013-03-30 08:49:43
是的,我知道了..我所做的错误是我创建了一个单独的包来执行所有的初始加载和增量加载。另外一件事是,在初始加载之后,我没有为'Mark CDC Start‘创建一个步骤。现在我得到了一个包,它执行完整的初始加载,然后将CDC标记为start。然后,从那里开始,我的第二个包开始执行增量加载。
发布于 2013-03-29 18:41:32
首先,您需要了解CDC控制任务仅处理LSN。它从启用CDC的数据库中读取它,并将其保存到指定的变量中,以便后续步骤可以使用它。可选,它可以将值持久化到数据库表中,然后后续的包执行可以使用它。
步骤1和步骤3基本上仅将一个LSB号分别置于CDC状态,即执行这些步骤时的最大LSB。当初始加载正在执行时,可能会有其他活动同时发生,这两个步骤给出了覆盖初始加载周期的LSB范围。
初始加载之后的下一次运行应该是增量加载,它使用数据流中的CDC源来检索初始加载期间发生的事务。
Matt Masson的一篇很棒的here文章应该会让你对疾病控制与预防中心有更深入的了解。
https://stackoverflow.com/questions/15287893
复制相似问题