Настройка производительности копирования фабрики данных Azure

https://docs.microsoft.com/en-us/azure/data-factory/data-factory-load-sql-data-warehouse. По этой ссылке с 1000 DWU и polybase я должен получить пропускную способность 200 Мбит / с. Но я получаю 4,66 Мбит / с. Я добавил пользователя в класс ресурсов xlargerc, чтобы добиться максимальной пропускной способности из хранилища данных azure sql.

Ниже представлен конвейер JSON.

                         {
              "name": "UCBPipeline-Copy",
                 "properties": {
                   "description": "pipeline with copy activity",
                 "activities": [
            {
                "type": "Copy",
                "typeProperties": {
                    "source": {
                        "type": "BlobSource"
                    },
                    "sink": {
                        "type": "SqlDWSink",
                        "allowPolyBase": true,
                        "writeBatchSize": 0,
                        "writeBatchTimeout": "00:00:00"
                    },
                    "cloudDataMovementUnits": 4
                },
                "inputs": [
                    {
                        "name": "USBBlob_Concept
                    }
                ],
                "outputs": [
                    {
                        "name": "AzureDW_Concept"
                    }
                ],
                "policy": {
                    "timeout": "01:00:00",
                    "concurrency": 1
                },
                "scheduler": {
                    "frequency": "Day",
                    "interval": 1
                },
                "name": "AzureBlobtoSQLDW_Concept",
                "description": "Copy Activity"
            }
        ],
        "start": "2017-02-28T18:00:00Z",
        "end": "2017-03-01T19:00:00Z",
        "isPaused": false,
        "hubName": "sampledf1_hub",
        "pipelineMode": "Scheduled"
    }
}

Входной набор данных:

{
    "name": "AzureBlob_Concept",
    "properties": {
        "published": false,
        "type": "AzureBlob",
        "linkedServiceName": "AzureZRSStorageLinkedService",
        "typeProperties": {
            "fileName": "conceptTab.txt",
            "folderPath": "source/",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": "\t"
            }
        },
        "availability": {
            "frequency": "Day",
            "interval": 1
        },
        "external": true,
        "policy": {}
    }
}

выходной набор данных:

{
    "name": "AzureDW_Concept",
    "properties": {
        "published": false,
        "type": "AzureSqlDWTable",
        "linkedServiceName": "AzureSqlDWLinkedService",
        "typeProperties": {
            "tableName": "concept"
        },
        "availability": {
            "frequency": "Day",
            "interval": 1
        }
    }
}

что-то не хватает в конфигурации?


person vidyak    schedule 08.03.2017    source источник
comment
Просто наблюдение: если ваши данные уже находятся в хранилище BLOB-объектов, вы можете просто загрузить их напрямую с помощью Polybase / внешней таблицы, а затем CTAS, фабрика данных не требуется.   -  person wBob    schedule 08.03.2017


Ответы (1)


Я взглянул на runId «e98ac557-a507-4a6e-8833-978eff1723c3», который должен принадлежать вашей активности копирования. Судя по нашим журналам обслуживания, размер исходного файла недостаточно велик (270 МБ в вашем случае), поэтому задержка вызова службы может снизить пропускную способность. Вы можете попробовать загрузить файлы большего размера, чтобы увеличить пропускную способность.

person Yingqin    schedule 08.03.2017
comment
Я пробовал с 9,16 ГБ данных. Обработка данных заняла 47 минут, если для параметра clouddatamovement unit установлено значение 4. вывод: Данные Чтение: 9,16 ГБ, Запись: 0,00 байта, Объем данных: 9,16 ГБ, Строки: 316498942, Пропускная способность: 3,66 МБ / с, Продолжительность: 02:50:29 Источник для промежуточной среды выполнения BLOB-объекта: Запад США Промежуточный BLOB-объект в целевой регион выполнения: Запад США. Polybase, используемая на приемнике: True - person vidyak; 12.03.2017
comment
Не могли бы вы предоставить идентификатор упомянутого вами нового запуска? Похоже, что в вашем новом прогоне использовался поэтапный BLOB-объект, что привело к низкой пропускной способности. - person Yingqin; 13.03.2017
comment
RunID для указанного выше запуска: 0bcf9cc7-e0c8-4e6b-bf7c-82174598271d - person vidyak; 13.03.2017
comment
Вы использовали поэтапное копирование, которое имеет гораздо более низкую пропускную способность, чем прямое копирование с Polybase. Не могли бы вы вместо этого использовать прямую копию? Обратитесь к этому документу: docs.microsoft.com/en-us/azure/data-factory/. - person Yingqin; 14.03.2017
comment
У меня был заголовок в моем CSV-файле. Мне пришлось удалить его и удалить свойство skipHeaderLineCount: 1. из-за заголовка, в котором оно собиралось для поэтапного копирования. Теперь я могу получить пропускную способность около 106 Мбит / с с 1000 DWU. - person vidyak; 16.03.2017