Поделиться через


Извлечение информации об изменениях данных с помощью источника «CDC»

Область применения: среда выполнения интеграции SSIS SQL Server в Фабрика данных Azure

Внимание

Компоненты потока CDC, включая задачу управления CDC, источник CDC и разделитель CDC, устарели. Дополнительные сведения см. в объявлении.

Чтобы можно было добавить и настроить источник CDC, пакет уже должен включать по крайней мере одну задачу «Поток данных» и задачу «Управление CDC».

Дополнительные сведения о задаче «Управление CDC» см. в разделе CDC Control Task.

Дополнительные сведения об источнике CDC см. в разделе CDC Source.

Извлечение информации об изменениях с использованием источника CDC

  1. В SQL Server Data Tools откройте проект служб SQL Server 2019 Integration Services (SSIS), содержащий нужный пакет.

  2. В Обозревателе решений дважды щелкните пакет, чтобы его открыть.

  3. Щелкните вкладку Поток данных , а затем Панель элементови перетащите источник CDC в область конструктора.

  4. Дважды щелкните источник CDC.

  5. В диалоговом окне Редактор источников CDC , на странице Диспетчер соединений выберите существующий диспетчер соединений ADO.NET из списка или щелкните Создать , чтобы создать новое соединение. Подключение должно быть установлено с базой данных SQL Server, содержащей таблицы изменений для чтения.

  6. Выберите таблицу CDC , в которой необходимо обработать изменения.

  7. Выберите или введите имя экземпляра отслеживания CDC в сочетании с таблицей CDC, которая должна быть считана.

    Отслеживаемая исходная таблица может иметь один или два отслеживаемых экземпляра для обеспечения возможности беспрепятственных переходов определения таблицы во время изменений схемы. Если для исходной таблицы отслеживания определено больше одного экземпляра отслеживания, выберите экземпляр отслеживания, который должен здесь использоваться. По умолчанию экземпляр отслеживания для таблицы [схема].[таблица] имеет имя <схема>_<таблица>, но фактически используемые экземпляры отслеживания могут иметь другие имена. Фактической таблицей, из которой выполняется чтение, является таблица CDC cdc .<экземпляр отслеживания>_CT.

  8. Выберите режим обработки, который в наилучшей степени соответствует конкретным потребностям обработки. Возможными вариантами являются следующие.

    • Все: возвращает изменения в текущем диапазоне CDC без значений перед обновлением .

    • Все со старыми значениями: возвращает изменения в текущем диапазоне обработки CDC, включая старые значения (перед обновлением). С каждой операции Update связаны две строки: одна со значениями перед обновлением и еще одна со значениями после обновления.

    • Суммарные: возвращает только по одной строке изменения в расчете на каждую исходную строку, измененную в текущем диапазоне обработки CDC. Если исходная строка была обновлена несколько раз, вырабатывается комбинированное изменение (например, результат операций insert и update формируется как единственное обновление, а результат операций update и delete — как единственное удаление). При работе в режиме обработки изменений «Суммарные» обеспечивается возможность разбивать изменения на выводы Delete, Insert и Update и обрабатывать их параллельно, поскольку единственная исходная строка появляется более чем в одном выводе.

    • Суммарные с маской обновления: этот режим аналогичен обычному режиму "Суммарные", но предусматривает также добавление столбцов логических значений с шаблоном имени __$<имя_столбца>_Changed, которые указывают измененные столбцы в текущей строке изменения.

    • Суммарные со слиянием: этот режим аналогичен обычному режиму "Суммарные", но с операциями Insert и Update, объединенными в одной операции Merge (UPSERT).

  9. Выберите строковую переменную пакета службы SSIS, в которой хранится состояние CDC для текущего контекста CDC. Дополнительные сведения о переменной состояния CDC см. в разделе Определение переменной состояния.

  10. Установите флажок Включить столбец индикатора повторной обработки , чтобы создать специальный выходной столбец с именем __$reprocessing. Этот столбец имеет значение true , если диапазон обработки CDC перекрывается с начальным диапазоном обработки (с диапазоном номеров LSN, соответствующих периоду начальной загрузки) или если диапазон обработки CDC подвергается повторной обработке вследствие ошибки в предыдущем прогоне. Этот столбец индикатора позволяет разработчику служб SSIS трактовать ошибки иначе при повторной обработке изменений (например, пропускать действия наподобие удаления несуществующей строки или вставки, которая окончилась неудачей из-за дублирующегося ключа).

    Дополнительные сведения см. в статье CDC Source Custom Properties.

  11. Чтобы обновить сопоставление между внешними и выходными столбцами, щелкните Столбцы и выберите другие столбцы в списке Внешний столбец .

  12. Можно также обновить значения выходных столбцов, удаляя значения в списке Выходной столбец .

  13. Чтобы настроить выход ошибок, щелкните Вывод ошибок.

  14. Можно щелкнуть Предварительный просмотр , чтобы рассмотреть до 200 строк данных, извлеченных источником CDC.

  15. Щелкните OK.

См. также

Редактор источника «CDC» (страница «Диспетчер соединений»)
Редактор источника «CDC» (страница «Столбцы»)
Редактор источника «CDC» (страница «Вывод ошибок»)