我可以将 MS SQL Server(2008 或 2012)中的更改数据捕获与将多个源表连接到一个目标表的 SSIS 包一起使用吗?
Technet 文章描述了源表和目标表具有相同结构时的 CDC + SSIS 使用案例。对自定义数据转换进行更改跟踪的唯一提示是可以指定 CDC 将跟踪更改的列。
问题是,我需要组合来自多个源表的数据以获取目标表,然后使其与这些源表保持同步。
这是因为目标数据仓库中的数据标准化程度低于源数据库中的数据。例如,我有事件表(包含计算机 ID、日期/时间和事件描述)和计算机表(包含计算机 ID 和计算机名称)。我不需要目标表中的那些规范化表和计算机 ID,因此填充目标表的选择应该是:
INSERT INTO DestDB..ComputerEvents (ComputerName, DateTime, Event)
SELECT s.ComputerName, e.DateTime, e.Event
FROM SourceDB..EventLog e
JOIN SourceDB..ComputerNames s
ON e.CompID = s.CompID
我只是不知道如何使 CDC 与包含此类转换的 SSIS 包一起工作?甚至可能吗?