У меня возникли проблемы после статьи о том, как использовать CDC Control Task. В частности, я, похоже, не в состоянии обработать начальную нагрузку таким образом, чтобы последующая инкрементная нагрузка была бесшовной (то есть без зазора и без перекрытия) с начальной загрузкой. К сожалению, у меня нет роскошной базы данных quiesced (т. Е. Будут активные изменения, в то время как я выполняю начальную загрузку). Вот что я пробовал:Как обрабатывать начальную загрузку таблицы CDC?
Во всех случаях моя инкрементная нагрузка проста: задача управления CDC с заданием «Получить диапазон обработки», задачей потока данных, в которой есть источник CDC и ADO .NET и другая задача управления CDC, чья работа «обработана маркой».
Для начальной загрузки, я попытался следующие два сценария:
задача контролировать CDC, в котором операция установлена на «Марк CDC начать», используя базы данных снимка, который я создал специально для этой задачи , Единственная другая задача - задача потока данных, в которой есть источник ADO.NET, который читается непосредственно из таблицы изменений и назначения ADO.NET. В этом случае начальная загрузка выполняется нормально, но последующая инкрементная загрузка не выполняется, заявив, что начальный LSN для диапазона обработки больше, чем конечный LSN.
Другая начальная загрузка, которую я пробовал, имеет задачу управления CDC, для которой задано значение «Отметить начальный запуск загрузки», тот же поток данных, что и выше (но на этот раз из базы данных в реальном времени вместо базы данных моментальный снимок) и другая задача управления CDC, чья операция «Отметить начальную начальную нагрузку». В этом случае я получаю дубликаты записей CDC, когда я запускаю инкрементную нагрузку.
Что мне не хватает?