с тех пор, как я опубликовал свой предыдущий ответ в мае прошлого года, многие из вас связались со мной, попросив образец конвейера для достижения сценария инкрементного копирования файла, используя шаблон getMetadata-ForEach-getMetadata-If-Copy.Это стало важным отзывом о том, что инкрементное копирование файлов является распространенным сценарием, который мы хотим дополнительно оптимизировать.
Сегодня я хотел бы опубликовать обновленный ответ - недавно мы выпустили новую функцию, которая позволяет гораздо более простой и масштабируемый подходдля достижения той же цели:
Теперь вы можете установить updatedDatetimeStart иifiedDatetimeEnd в наборе данных SFTP, чтобы указать фильтры временного диапазона для извлечения только тех файлов, которые были созданы / изменены в течение этого периода.Это позволяет получить инкрементную копию файла с помощью одного действия: https://docs.microsoft.com/en-us/azure/data-factory/connector-sftp#dataset-properties
Эта функция включена для этих файловых соединителей в ADF: AWS S3, хранилище BLOB-объектов Azure, FTP, SFTP, ADLS Gen1,ADLS Gen2 и локальная файловая система.Поддержка HDFS появится очень скоро.
Далее, чтобы еще проще было создать конвейер инкрементного копирования, мы теперь выпускаем общие шаблоны конвейеров в качестве шаблонов решений.Вы можете выбрать один из шаблонов, заполнить информацию о связанном сервисе и наборе данных и нажать «развернуть» - это так просто!https://docs.microsoft.com/en-us/azure/data-factory/solution-templates-introduction
Вы сможете найти решение для инкрементного копирования файлов в галерее: https://docs.microsoft.com/en-us/azure/data-factory/solution-template-copy-new-files-lastmodifieddate
Еще раз спасибо за использование ADF и счастливую интеграцию данных кодирования с ADF!