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


Дополнительные разделы SAP CDC

ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics

Совет

Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !

Дополнительные сведения о соединителе SAP CDC, таких как интеграция данных на основе метаданных, отладка и многое другое.

Параметризация потока данных сопоставления SAP CDC

Одним из ключевых преимуществ конвейеров и потоков данных сопоставления в Фабрика данных Azure и Azure Synapse Analytics является поддержка интеграции данных на основе метаданных. С помощью этой функции можно разработать один параметризованный конвейер (или несколько), который можно использовать для обработки интеграции потенциально сотен или даже тысяч источников. Соединитель SAP CDC разработан с учетом этого принципа: все соответствующие свойства, будь то исходный объект, режим выполнения, ключевые столбцы и т. д., можно предоставить с помощью параметров, чтобы повысить гибкость и повторно использовать потенциал потоков данных сопоставления SAP CDC.

Чтобы понять основные понятия параметризации потоков данных сопоставления, считывает потоки данных сопоставления параметризации.

В коллекции шаблонов Фабрика данных Azure и Azure Synapse Analytics вы найдете конвейер шаблонов и поток данных, в котором показано, как параметризовать прием данных SAP CDC.

Параметризация источника и режима выполнения

Для сопоставления потоков данных не обязательно требуется артефакт набора данных: преобразования источника и приемника предлагают встроенный тип источника (или тип приемника). В этом случае все свойства источника, определенные в наборе данных ADF, можно настроить в параметрах источника преобразования источника (или вкладке "Параметры " преобразования приемника). Использование встроенного набора данных обеспечивает более подробный обзор и упрощает параметризацию потока данных сопоставления, так как полная конфигурация источника (или приемника) сохраняется в одном месте.

Для SAP CDC свойства, которые чаще всего задаются с помощью параметров, находятся в параметрах источника вкладок и оптимизации. Если тип источника является встроенным, следующие свойства можно параметризовать в параметрах источника.

  • Контекст ODP: допустимые значения параметров
    • ABAP_CDS для представлений служб данных ABAP Core
    • BW для SAP BW или SAP BW/4HANA InfoProviders
    • Представления сведений о SAP HANA
    • SAPI для sap DataSources/Extractors
    • При использовании сервера репликации ландшафтных преобразований SAP (SLT) в качестве источника имя контекста ODP — SLT~<Queue Alias>. Значение псевдонима очереди можно найти в разделе "Данные администрирования" в конфигурации SLT в кабине SLT (SAP transaction LTRC).
    • ODP_SELF и RANDOM — это контексты ODP, используемые для технической проверки и тестирования, и обычно не имеют значения.
  • Имя ODP: укажите имя ODP, из которого требуется извлечь данные.
  • Режим выполнения: допустимые значения параметров
    • fullAndIncrementalLoad for Full во время первого запуска, а затем добавочный, который инициирует процесс отслеживания измененных данных и извлекает текущий полный моментальный снимок данных.
    • fullLoad for Full во всех запусках, который извлекает текущий полный моментальный снимок данных без инициирования процесса отслеживания измененных данных.
    • добавочная загрузка только для добавочных изменений, которая инициирует процесс отслеживания измененных данных без извлечения текущего полного моментального снимка.
  • Ключевые столбцы: ключевые столбцы предоставляются как массив строк (двойные кавычки). Например, при работе с таблицами SAP VBAP (элементы заказа на продажу) определение ключа должно быть ["VBELN", "POSNR"] (или ["MANDT","VBELN","POSNR"] в случае, если поле клиента учитывается).

Параметризация условий фильтра для секционирования источника

На вкладке "Оптимизация " исходная схема секционирования (см . оптимизацию производительности для полной или начальной загрузки) можно определить с помощью параметров. Как правило, необходимо выполнить два шага:

  1. Определите исходную схему секционирования.
  2. Прием параметра секционирования в поток данных сопоставления.

Определение схемы секционирования источника

Формат в шаге 1 соответствует стандарту JSON, состоящему из массива определений секций, каждый из которых является массивом отдельных условий фильтра. Эти условия сами являются объектами JSON со структурой, выровненной с так называемыми параметрами выбора в SAP. На самом деле, формат, необходимый платформой SAP ODP, в основном совпадает с динамическими фильтрами DTP в SAP BW:

{ "fieldName": <>, "sign": <>, "option": <>, "low": <>, "high": <> }

Например.

{ "fieldName": "VBELN", "sign": "I", "option": "EQ", "low": "0000001000" }

соответствует предложению SQL WHERE ... WHERE "VBELN" = "0000001000" или

{ "fieldName": "VBELN", "sign": "I", "option": "BT", "low": "0000000000", "high": "0000001000" }

соответствует предложению SQL WHERE ... WHERE "VBELN" МЕЖДУ "000000000000" И "0000001000"

Определение JSON схемы секционирования, содержащей две секции, выглядит следующим образом.

[
    [
        { "fieldName": "GJAHR", "sign": "I", "option": "BT", "low": "2011", "high": "2015" }
    ],
    [
        { "fieldName": "GJAHR", "sign": "I", "option": "BT", "low": "2016", "high": "2020" }
    ]
]

где первый раздел содержит финансовые годы (GJAHR) 2011 по 2015 год, а второй раздел содержит финансовые годы 2016 по 2020 год.

Примечание.

Фабрика данных Azure не выполняет никаких проверок по этим условиям. Например, пользователь несет ответственность за то, чтобы условия секционирования не перекрывались.

Условия секционирования могут быть более сложными, состоящими из нескольких простых условий фильтрации. Логические сочетания, которые явно определяют, как объединить несколько простых условий в одной секции. Неявное определение в SAP выглядит следующим образом:

  1. включая условия ("sign": "I") для того же имени поля объединяются с OR (мысленно, помещают скобки вокруг результирующего условия).
  2. исключения условий ("sign": "E") для того же имени поля объединяются с OR (опять же, мысленно, помещают скобки вокруг результирующего условия).
  3. Результирующий результат действий 1 и 2
    • в сочетании с AND для включения условий,
    • в сочетании с AND NOT для исключения условий .

Например, условие секции

    [
        { "fieldName": "BUKRS", "sign": "I", "option": "EQ", "low": "1000" },
        { "fieldName": "BUKRS", "sign": "I", "option": "EQ", "low": "1010" },
        { "fieldName": "GJAHR", "sign": "I", "option": "BT", "low": "2010", "high": "2025" },
        { "fieldName": "GJAHR", "sign": "E", "option": "EQ", "low": "2023" },
        { "fieldName": "GJAHR", "sign": "E", "option": "EQ", "low": "2021" }
    ]

соответствует предложению SQL WHERE ... WHERE ("BUKRS" = "1000" ИЛИ "BUKRS" = "1010" И ("GJAHR" МЕЖДУ "2010" И "2025" И NOT ("GJAHR" = "GJAHR" = "GJARH" = "GJARH" = "2023")

Примечание.

Не забудьте использовать внутренний формат SAP для низких и высоких значений, включить начальные нули и выразить даты календаря в виде восьми символьной строки с форматом YYYYMMDD.

Прием параметра секционирования в поток данных сопоставления

Чтобы принять схему секционирования в поток данных сопоставления, создайте параметр потока данных (например, sapPartitions). Чтобы передать формат JSON в этот параметр, его необходимо преобразовать в строку с помощью функции @string( ):

Снимок экрана: прием схемы секционирования в поток данных сопоставления.

Наконец, на вкладке оптимизации преобразования источника в потоке данных сопоставления выберите тип секции "Источник" и введите параметр потока данных в свойстве "Условия секции".

Снимок экрана: использование параметра секционирования на вкладке оптимизации преобразования источника.

Параметризация ключа контрольной точки

При использовании параметризованного потока данных для извлечения данных из нескольких источников SAP CDC важно параметризовать ключ контрольной точки в действии потока данных конвейера. Ключ контрольной точки используется Фабрика данных Azure для управления состоянием процесса отслеживания измененных данных. Чтобы избежать того, что состояние одного процесса CDC перезаписывает состояние другого, убедитесь, что значения ключей контрольных точек уникальны для каждого набора параметров, используемого в потоке данных.

Примечание.

Рекомендуется обеспечить уникальность ключа контрольной точки, чтобы добавить значение ключа контрольной точки в набор параметров для потока данных.

Дополнительные сведения о ключе контрольной точки см. в разделе "Преобразование данных с помощью соединителя SAP CDC".

Отладка

Фабрика данных Azure конвейеры можно выполнять с помощью триггеров или отладки. Основное различие между этими двумя параметрами заключается в том, что отладка выполняет поток данных и конвейер на основе текущей версии, моделироваемой в пользовательском интерфейсе, а триггерные запуски выполняют последнюю опубликованную версию потока данных и конвейера.

Для SAP CDC существует еще один аспект, который необходимо понимать: чтобы избежать влияния отладочных запусков на существующий процесс отслеживания измененных данных, отладка выполняется с помощью другого значения "процесс подписчика" (см. мониторинг потоков данных SAP CDC), чем запущенные запуски. Таким образом, они создают отдельные подписки (т. е. процессы отслеживания измененных данных) в системе SAP. Кроме того, значение "процесса подписчика" для выполнения отладки ограничено временем существования сеанса пользовательского интерфейса браузера.

Примечание.

Чтобы проверить стабильность процесса отслеживания измененных данных с помощью SAP CDC в течение длительного периода времени (например, несколько дней), поток данных и конвейер должны быть опубликованы, и запускать запуски необходимо.