Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Источник CDC считывает диапазон данных изменений из таблиц изменения SQL Server 2014 и передает изменения другим компонентам SSIS.
Диапазон измененных данных, считываемых источником CDC, называется диапазоном обработки CDC и определяется задачей управления CDC, выполняемой до запуска текущего потока данных. Диапазон обработки CDC определяется с помощью значения переменной пакета, которая поддерживает состояние обработки CDC для группы таблиц.
Источник CDC извлекает данные из базы данных SQL Server с помощью таблицы базы данных, представления или инструкции SQL.
Источник CDC использует следующие конфигурации.
Диспетчер соединений SQL Server ADO.NET для доступа к базе данных CDC SQL Server. Дополнительные сведения о настройке подключения к источнику CDC см. в разделе о редакторе источника CDC (страница "Диспетчер соединений").
Таблица, включенная для CDC.
Имя экземпляра отслеживания выбранной таблицы (если таковых существует несколько).
Режим обработки изменений.
Имя переменной пакета состояния CDC, на основе которой определен диапазон обработки CDC. Источник CDC не изменяет значение этой переменной.
Данные, возвращаемые источником CDC, являются теми же, что возвращают следующие функции CDC SQL Server: cdc.fn_cdc_get_all_changes_<capture-instance-name> или cdc.fn_cdc_get_net_changes_<capture-instance-name> (если они доступны). Единственным необязательным добавлением является столбец __$initial_processing , который указывает, может ли текущий диапазон обработки перекрывать диапазон начальной загрузки таблицы. Дополнительные сведения о начальной обработке см. в разделе CDC Control Task.
Источник CDC имеет один обычный вывод и один вывод ошибок.
Обработка ошибок
Источник CDC имеет вывод ошибок. Вывод ошибок компонента включает следующие выходные столбцы.
Код ошибки. Значение всегда равно -1.
Столбец с ошибкой. Входной столбец, вызывающий ошибку (это относится к ошибкам преобразования).
Столбцы строки с ошибкой. Данные записи, которые вызывают ошибку.
В зависимости от настройки поведения в случае ошибки, источник CDC поддерживает возврат ошибок (преобразование данных, усечение), которые обнаруживаются в процессе извлечения в выводе ошибок. Дополнительные сведения см. в редакторе источника CDC (страница вывода ошибок).
Поддержка типов данных
Компонент источника CDC для Майкрософт поддерживает все типы данных SQL Server, которые сопоставляются с правильными типами данных служб SSIS.
Устранение нарушений в работе с источником CDC
Ниже приведена информация об устранении нарушений в работе с источником CDC.
Этот скрипт используется для выявления проблем и воспроизведения их в среде SQL Server Management Studio
Операцией источника CDC управляет операция задачи «Управление CDC», выполняемая перед вызовом источника CDC. Задача «Управление CDC» подготавливает значение переменной пакета состояния CDC для включения начального и конечного номеров LSN. Задача выполняет функции, эквивалентные следующему скрипту:
use <cdc-enabled-database-name>
declare @start_lsn binary(10), @end_lsn binary(10)
set @start_lsn = sys.fn_cdc_increment_lsn(
convert(binary(10),'0x' + '<value-from-state-cs>', 1))
set @end_lsn =
convert(binary(10),'0x' + '<value-from-state-ce>', 1)
select * from cdc.fn_cdc_get_net_changes_dbo_Table1(@start_lsn,
@end_lsn, '<mode>')
где:
<cdc-enabled-database-name> — это имя базы данных SQL Server, содержащей таблицы изменений.
<value-from-state-cs> — это значение, которое появляется в переменной состояния CDC как CS/<value-from-state-cs>/ (CS означает Current-processing-range-Start, то есть начало текущего диапазона обработки).
<value-from-state-ce> — это значение, которое появляется в переменной состояния CDC как CE/<value-from-state-cs>/ (CE означает Current-processing-range-End, то есть конец текущего диапазона обработки).
<mode> — это режимы обработки CDC. Режимы обработки могут иметь одно из следующих значений: Все, Все со старыми значениями, Суммарные, Суммарные с маской обновления, Суммарные со слиянием.
Этот скрипт помогает изолировать проблемы, воспроизводив их в СРЕДЕ SQL Server Management Studio, где легко воспроизводить и выявлять ошибки.
Сообщение об ошибке SQL Server
Следующее сообщение может быть возвращено SQL Server:
Задано недостаточное количество аргументов для процедуры или функции cdc.fn_cdc_get_net_changes_<..>.
Эта ошибка не указывает, что отсутствует какой-то аргумент. Она означает, что начало или конец диапазона значений номеров LSN в переменной состояния CDC является недопустимым.
Настройка CDC-источника
Источник CDC можно настраивать программным путем или с помощью конструктора служб SSIS.
Дополнительные сведения см. в одном из следующих разделов:
Диалоговое окно Расширенный редактор содержит свойства, которые можно задавать программным путем.
Открытие диалогового окна Расширенный редактор .
- На экране потока данных проекта SQL Server 2014 Integration Services (SSIS) щелкните правой кнопкой мыши источник CDC и выберите "Показать расширенный редактор".
Дополнительные сведения о свойствах, которые можно установить в диалоговом окне Расширенный редактор , см. в разделе CDC Source Custom Properties.
В этом разделе
Связанные материалы
- Запись в блоге Режимы обработки для источника CDC на сайте mattmasson.com.