У меня возникла проблема с действием копирования в Фабрике данных Azure. Установка следующая.
Источником первого действия по копированию данных является Salesforce. Он получает одну дату из запроса и записывает результат в таблицу Fabric Lakehouse. Для действия таблицы установлено значение «Перезаписать», что означает, что таблица никогда не будет увеличиваться и всегда будет перезаписываться только одна строка.
Второе действие копирования данных получает то же значение из таблицы и помещает его в другую таблицу Fabric Lakehouse с теми же настройками, что и первое. Однако этот добавляет таблицу, а не перезаписывает ее. Вот результат таблицы стока:
Кто-нибудь знает, почему здесь не работает «перезапись»?
Сначала попробуйте выполнить следующие шаги и проверьте, работает это или нет.
Это может быть связано с проблемой кэша, поскольку для отражения изменений настроек по умолчанию может потребоваться некоторое время. Сначала опубликуйте конвейер и закройте его. Откройте снова через некоторое время и проверьте, дает ли он тот же результат или нет.
Вместо динамических параметризованных наборов данных сначала проверьте, работает ли это с их отдельными наборами данных или нет.
Иногда это также может быть проблема с пользовательским интерфейсом. Итак, попробуйте изменить настройки в JSON конвейера. Перейдите к Pipeline JSON ({}
) в правом верхнем углу, убедитесь, что значение равно Overwrite
, и сохраните конвейер.
Если результат по-прежнему тот же, в качестве временного обходного пути создайте блокнот в структуре с запросом усечения вашей таблицы и выполните его перед действием копирования с помощью веб-действия.
Вы можете проверить этот REST API, чтобы запустить блокнот из веб-активности ADF.
Похоже, это ошибка в Фабрике данных Azure. Когда я создаю новый конвейер всего с одним действием «Копировать данные» и настраиваю все, как я описал (чтение из одной таблицы, запись в другую и опцию «Перезаписать»), вот как выглядит полученный JSON. Он добавляет «OverwriteSchema» вместо «Overwrite». Я изменил его вручную в JSON, и теперь все работает как положено.
Теперь я вручную изменил «tableActionOption» на «Overwrite», и все работает как положено.