Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
DeltaFlow — это возможность в потоках событий Fabric, которая преобразует необработанные события записи измененных данных (CDC) в неструктурированный, готовый к аналитике формат. Вместо работы с глубоко вложенными полезными данными Debezium JSON вы получаете табличные строки, которые внимательно отражают структуру таблиц исходной базы данных, обогащенные столбцами метаданных, описывающими каждое изменение.
В этой статье описывается процесс преобразования, столбцы метаданных, которые DeltaFlow добавляет, и как в выходных данных представлены различные типы операций (вставки, обновления и удаления).
Структура событий Raw Debezium CDC
Соединители CDC, управляемые Debezium, выдают события изменения в виде конвертов JSON. Обычное необработанное событие содержит вложенные структуры, включая данные строки до и после изменения, исходные метаданные и тип операции:
{
"before": null,
"after": {
"OrderID": 1001,
"CustomerName": "Contoso Ltd",
"OrderTotal": 249.99,
"OrderDate": "2026-03-01"
},
"source": {
"version": "2.x",
"connector": "sqlserver",
"name": "fabsql",
"ts_ms": 1741305600000,
"db": "SalesDB",
"schema": "dbo",
"table": "Orders"
},
"op": "c",
"ts_ms": 1741305600123
}
Для этого вложенного формата требуется синтаксический анализ и извлечение, прежде чем выполнять запросы аналитики, например для доступа OrderTotal, необходимо перейти к объекту after и извлечь его. Запросы к этому формату напрямую с помощью KQL или SQL являются сложными и подвержены ошибкам.
Преобразованные выходные данные DeltaFlow
DeltaFlow сплющивает конверт Debezium в одну табличную строку. Столбцы исходной таблицы отображаются как столбцы верхнего уровня, а DeltaFlow добавляет столбцы метаданных, описывающие изменение:
| Идентификатор заказа | ИмяКлиента | Общая сумма заказа | Дата заказа | __dbz_operation | __dbz_timestamp | __dbz_server | __dbz_schema | __dbz_table |
|---|---|---|---|---|---|---|---|---|
| 1001 | Contoso Ltd | 249.99 | 2026-03-01 | Вставить | 2026-03-07T00:00:00Z | fabsql | dbo | Заказы |
Вы можете запрашивать эти выходные данные непосредственно с помощью KQL или других средств аналитики— не требуется синтаксический анализ.
Столбцы метаданных
DeltaFlow добавляет следующие столбцы метаданных в каждую выходную строку:
| колонна | Описание |
|---|---|
__dbz_operation |
Тип операции изменения. Допустимые значения: Insert, , DeletePre_UpdatePost_Update. |
__dbz_timestamp |
Метка времени, когда событие изменения было зафиксировано. |
__dbz_server |
Логическое имя исходного сервера базы данных, настроенного в соединителе CDC. |
__dbz_schema |
Имя схемы исходной таблицы (например, dbo, public). |
__dbz_table |
Имя исходной таблицы, в которой произошло изменение. |
Типы операций
DeltaFlow представляет каждый тип изменения базы данных в виде отдельной операции. В следующей таблице описывается, когда выполняется каждая операция:
| Операция | Значение __dbz_operation |
При возникновении |
|---|---|---|
| Вставка | Insert |
При вставке новой строки в исходную таблицу или на этапе создания начального моментального снимка, когда коннектор записывает существующие строки. |
| Update |
Pre_Update и Post_Update. |
На этапе потоковой передачи при изменении существующей строки. DeltaFlow выдает две строки для каждого обновления — один представляет состояние строки до изменения и один после. |
| Удалить | Delete |
Во время потоковой передачи, когда строка удаляется из исходной таблицы. |
Начальный снимок состояния
При первом запуске соединителя CDC выполняется начальный моментальный снимок исходной таблицы для записи всех существующих строк. Каждая строка снимка отображается как Insert операция в выводе DeltaFlow.
| Идентификатор заказа | ИмяКлиента | Общая сумма заказа | Дата заказа | __dbz_operation | __dbz_timestamp |
|---|---|---|---|---|---|
| 1001 | Contoso Ltd | 249.99 | 2026-03-01 | Вставить | 2026-03-07T00:00:00Z |
| 1002 | Fabrikam Inc | 150,00 | 2026-03-02 | Вставить | 2026-03-07T00:00:00Z |
После завершения моментального снимка соединитель переключается в режим потоковой передачи и записывает текущие изменения.
Вставить
При добавлении новой строки в исходную таблицу DeltaFlow выдает одну строку с операцией Insert:
| Идентификатор заказа | ИмяКлиента | СуммаЗаказа | Дата заказа | __dbz_operation | __dbz_timestamp |
|---|---|---|---|---|---|
| 1003 | Adventure Works | 75.50 | 2026-03-08 | Вставить | 2026-03-08T14:30:00Z |
Обновление
При изменении существующей строки DeltaFlow выдает две строки с одинаковыми метками времени — один для состояния до изменения (Pre_Update) и один для состояния после (Post_Update). Этот шаблон похож на потоки данных с изменениями Delta:
| Идентификатор заказа | ИмяКлиента | Сумма заказа | Дата заказа | __dbz_operation | __dbz_timestamp |
|---|---|---|---|---|---|
| 1001 | Contoso Ltd | 249.99 | 2026-03-01 | Предобновление | 2026-03-09T09:15:00Z |
| 1001 | Contoso Ltd | 299.99 | 2026-03-01 | Обновление_Записи | 2026-03-09T09:15:00Z |
В этом примере изменено OrderTotal с 249.99 на 299.99. Сохраняются как начальное, так и конечное состояние, что позволяет вычислять диффы, отслеживать изменения на уровне поля или создавать аудиторский след.
Удалить
При удалении строки из исходной таблицы DeltaFlow выдает одну строку с операцией Delete, содержащую последние известные значения строки:
| Идентификатор заказа | ИмяКлиента | Общая сумма заказа | Дата заказа | __dbz_operation | __dbz_timestamp |
|---|---|---|---|---|---|
| 1002 | Fabrikam Inc | 150,00 | 2026-03-02 | Удалить | 09.03.2026 13:00:00 MSK |
Сопоставление схемы и назначения таблицы
При маршрутизации потока с поддержкой DeltaFlow в поддерживаемое место назначения, например в хранилище событий, DeltaFlow автоматически:
- Создает целевые таблицы , соответствующие структуре исходной таблицы, со столбцами для каждого исходного столбца, а также пять столбцов метаданных.
- Управляет эволюцией схемы — при изменении исходных таблиц (например, добавляются столбцы или создаются новые таблицы), DeltaFlow обнаруживает изменения, обновляет зарегистрированные схемы и корректирует целевые таблицы соответствующим образом.
Дополнительные сведения об управлении таблицами конечных данных смотрите в разделе "Возможности DeltaFlow", который находится на каждой странице соединителя CDC.