Подстановочные знаки для входов хранилища озера данных Azure в фабрике данных

Я просматриваю документацию Microsoft по перемещению данных в хранилище озера данных Azure и нахожу следующее о fileName имущество:

Имя файла в хранилище озера данных Azure. fileName является необязательным и чувствительным к регистру. Если вы укажете имя файла, действие (включая Копирование) будет работать с конкретным файлом."

Чего я здесь не вижу, так это упоминания о шаблонах. Как мне использовать, например, не все файлы в папке, а только те, которые соответствуют 2017-foo-*.json? Я попробовал звездочку, но, похоже, ее воспринимают буквально.

1 ответ

В зависимости от вашего источника и приемника, вы можете использовать fileFilter свойство вместо fileName для использования подстановочных знаков, например, цитата отсюда:

Допустимые значения: * (несколько символов) и? (один символ).

Пример 1: "fileFilter": "*.log"

Пример 2: "fileFilter": 2014-1-?.txt"

Обратите внимание, что fileFilter применим для входного набора данных FileShare.

Этот пример для предварительной публикации файлов:

{
    "name": "InputDataset-AllFiles",
    "properties": {
        "published": false,
        "type": "FileShare",
        "linkedServiceName": "OnPremisesFileServerLinkedService",
        "typeProperties": {
            "fileFilter": "*.txt",
            "folderPath": "."
        },
        "availability": {
            "frequency": "Day",
            "interval": 1
        },
        "external": true,
        "policy": {}
    }
}

Я не уверен, что это свойство доступно для других типов, таких как хранилище больших двоичных объектов, озеро данных и т. Д. Можете ли вы подтвердить свой источник и приемник (если предположить, что одним из них является озеро данных)?

Дополнительная информация доступна здесь:

https://docs.microsoft.com/en-us/azure/data-factory/data-factory-onprem-file-system-connector

Polybase теперь поддерживает ADLS, поэтому вы можете перемещать данные таким образом без этих махинаций ADF.

Другие вопросы по тегам