Краткое руководство. Создание фабрики данных Azure с помощью PowerShellQuickstart: Create an Azure data factory using PowerShell

В этом кратком руководстве описано создание фабрики данных Azure с помощью PowerShell.This quickstart describes how to use PowerShell to create an Azure data factory. Конвейер, который вы создадите в этой фабрике данных, копирует данные из одной папки в другую в хранилище BLOB-объектов Azure.The pipeline you create in this data factory copies data from one folder to another folder in an Azure blob storage. Инструкции по преобразованию данных с помощью Фабрики данных Azure см. в статье Преобразование данных с помощью действия Spark в фабрике данных Azure.For a tutorial on how to transform data using Azure Data Factory, see Tutorial: Transform data using Spark.

Примечание

Эта статья не содержит подробный обзор службы фабрики данных. Общие сведения о службе фабрики данных Azure см. в статье Введение в фабрику данных Azure.

Предварительные требованияPrerequisites

Подписка Azure.Azure subscription

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.If you don't have an Azure subscription, create a free account before you begin.

Роли AzureAzure roles

Чтобы создать экземпляры фабрики данных, нужно назначить учетной записи пользователя, используемой для входа в Azure, роль участника, владельца либо администратора подписки Azure.To create Data Factory instances, the user account that you use to sign in to Azure must be a member of the contributor or owner role, or an administrator of the Azure subscription. Чтобы просмотреть имеющиеся разрешения в подписке на портале Azure, выберите имя пользователя в правом верхнем углу и выберите Дополнительные настройки (...), а затем выберите Мои разрешения.To view the permissions that you have in the subscription, go to the Azure portal, select your username in the upper-right corner, select More options (...), and then select My permissions. Если у вас есть доступ к нескольким подпискам, выберите соответствующую подписку.If you have access to multiple subscriptions, select the appropriate subscription.

Чтобы создавать дочерние ресурсы для службы "Фабрика данных", в том числе наборы данных, связанные службы, конвейеры, триггеры и среды выполнения интеграции, а также управлять ими, выполните следующие требования:To create and manage child resources for Data Factory - including datasets, linked services, pipelines, triggers, and integration runtimes - the following requirements are applicable:

  • Чтобы создавать дочерние ресурсы и управлять ими на портале Azure, необходимо иметь роль Участник Фабрики данных на уровне группы ресурсов или более высоком.To create and manage child resources in the Azure portal, you must belong to the Data Factory Contributor role at the resource group level or above.
  • Чтобы создавать дочерние ресурсы и управлять ими с помощью PowerShell или пакета SDK, достаточно роли Участник на уровне ресурса или более высоком.To create and manage child resources with PowerShell or the SDK, the contributor role at the resource level or above is sufficient.

Примеры инструкций по назначению пользователю роли см. в статье Добавление или изменение администраторов подписки Azure.For sample instructions about how to add a user to a role, see the Add roles article.

Дополнительные сведения см. в следующих ресурсах:For more info, see the following articles:

Учетная запись хранения Azure.Azure storage account

В этом кратком руководстве в качестве исходного и целевого хранилища данных используется учетная запись хранения Azure общего назначения (в частности, хранилища BLOB-объектов).You use a general-purpose Azure storage account (specifically Blob storage) as both source and destination data stores in this quickstart. Если у вас нет учетной записи хранения Azure общего назначения, см. инструкции по созданию учетной записи хранения.If you don't have a general-purpose Azure storage account, see Create a storage account to create one.

Получение имени и ключа учетной записи хранения и ключа учетной записиGet the storage account name and account key

В этом кратком руководстве вам потребуется имя и ключ своей учетной записи хранения Azure.You will need the name and key of your Azure storage account for this quickstart. Далее описана процедура получения имени и ключа учетной записи хранения.The following procedure provides steps to get the name and key of your storage account:

  1. В веб-браузере перейдите к Портал Azure и выполните вход с помощью имени пользователя и пароля Azure.In a web browser, go to the Azure portal and sign in using your Azure username and password.

  2. Выберите Все службы > Хранилище > Учетные записи хранения.Select All services > Storage > Storage accounts.

  3. На странице Учетные записи хранения найдите с помощью фильтра свою учетную запись хранения (при необходимости), а затем выберите эту учетную запись.In the Storage accounts page, filter for your storage account (if needed), and then select your storage account.

  4. Из боковой панели страницы <Имя учетной записи > - Учетная запись хранения перейдите к метке Параметры и выберите Ключи доступа.From the <Account name> - Storage account page's sidebar, go to the Settings label and select Access keys. На экране отобразится панель <Имя учетной записи - Ключи доступа.The <Account name> - Access keys appears.

    Получение имени и ключа учетной записи хранения

  5. Скопируйте значения полей Имя учетной записи хранения и key1 в буфер обмена.Copy the values for the Storage account name and key1 boxes to the clipboard. Вставьте их в Блокнот или другой редактор и сохраните файл.Paste them into Notepad or any other editor and save it. Они потребуются вам далее в этом кратком руководстве.You use them later in this quickstart.

Создание контейнера BLOB-объектовCreate a blob container

В этом разделе вы создадите контейнер больших двоичных объектов с именем adftutorial в хранилище BLOB-объектов Azure.In this section, you create a blob container named adftutorial in Azure Blob storage.

  1. На боковой панели страницы <Имя учетной записи - Ключи доступа выберите Обзор > BLOB-объекты.From the <Account name> - Access keys page's sidebar, select Overview > Blobs.

  2. На панели инструментов <Имя учетной записи - BLOB-объекты выберите Контейнер.On the <Account name> - Blobs page's toolbar, select Container.

  3. В диалоговом окне Создание контейнера введите adftutorial в качестве имени и щелкните ОК.In the New container dialog box, enter adftutorial for the name, and then select OK. Страница <Имя учетной записи - BLOB-объекты обновлена для включения adftutorial в список контейнеров.The <Account name> - Blobs page is updated to include adftutorial in the list of containers.

    Список контейнеров

Добавление входной папки и файла для контейнера BLOB-объектовAdd an input folder and file for the blob container

Создайте в этом разделе папку с именем input в только что созданном контейнере, а затем загрузите пример файла во входную папку.In this section, you create a folder named input in the container you just created, and then upload a sample file to the input folder. Прежде чем начать, откройте текстовый редактор, например Блокнот и создайте файл emp.txt с таким содержимым:Before you begin, open a text editor such as Notepad, and create a file named emp.txt with the following content:

John, Doe
Jane, Doe

Сохраните файл в папкеC:\ADFv2QuickStartPSH.Save the file in the C:\ADFv2QuickStartPSH folder. (Если папка не существует, создайте ее.) После этого вернитесь на портал Azure и выполните следующие действия.(If the folder doesn't already exist, create it.) Then return to the Azure portal and follow these steps:

  1. На странице <Имя учетной записи - BLOB-объекты, где вы остановились, выберите adftutorial в обновленном списке контейнеров.In the <Account name> - Blobs page where you left off, select adftutorial from the updated list of containers. (Если вы закрыли окно или перешли на другую страницу, выполните вход в портал Azure еще раз, выберите Все службы > Служба хранилища > Учетные записи хранения, выберите свою учетную запись хранения, а затем щелкните BLOB-объекты > adftutorial.)(If you closed the window or went to another page, sign in to the Azure portal again, select All services > Storage > Storage accounts, select your storage account, and then select Blobs > adftutorial.)

  2. На панели инструментов adftutorial страницы контейнера выберите Отправка.On the adftutorial container page's toolbar, select Upload.

  3. На странице Отправка BLOB-объектов выберите поле Файлы, а затем найдите и выберите файл emp.txt.In the Upload blob page, select the Files box, and then browse to and select the emp.txt file.

  4. Разверните заголовок Дополнительно.Expand the Advanced heading. Теперь страница отображается, как показано ниже:The page now displays as shown:

    Щелкните Advanced (Дополнительно).

  5. В поле Отправить в папку введите input.In the Upload to folder box, enter input.

  6. Нажмите кнопку Отправить.Select the Upload button. В списке должен отобразиться файл emp.txt с состоянием отправки.You should see the emp.txt file and the status of the upload in the list.

  7. Щелкните Закрыть значок (X), чтобы закрыть страницу Отправка BLOB-объектов.Select the Close icon (an X) to close the Upload blob page.

Не закрывайте страницу контейнера adftutorial.Keep the adftutorial container page open. Она понадобится для проверки выходных данных в конце этого руководства.You use it to verify the output at the end of this quickstart.

Azure PowerShellAzure PowerShell

Примечание

Эта статья была изменена и теперь содержит сведения о новом модуле Az для Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Вы по-прежнему можете использовать модуль AzureRM, исправления ошибок для которого будут продолжать выпускаться как минимум до декабря 2020 г.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Дополнительные сведения о совместимости модуля Az с AzureRM см. в статье Introducing the new Azure PowerShell Az module (Знакомство с новым модулем Az для Azure PowerShell).To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Инструкции по установке модуля Az см. в статье об установке Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Чтобы установить модули Azure PowerShell, выполните инструкции из статьи Установка и настройка Azure PowerShell.Install the latest Azure PowerShell modules by following instructions in How to install and configure Azure PowerShell.

Вход в PowerShellLog in to PowerShell

  1. Запустите PowerShell на компьютере.Launch PowerShell on your machine. Не закрывайте PowerShell, пока выполняются описанные в этом кратком руководстве инструкции.Keep PowerShell open until the end of this quickstart. Если закрыть и снова открыть это окно, то придется вновь выполнять эти команды.If you close and reopen, you need to run these commands again.

  2. Выполните следующую команду и введите те же имя пользователя Azure и пароль, которые используются для входа на портал Azure:Run the following command, and enter the same Azure user name and password that you use to sign in to the Azure portal:

    Connect-AzAccount
    
  3. Чтобы просмотреть все подписки для этой учетной записи, выполните следующую команду:Run the following command to view all the subscriptions for this account:

    Get-AzSubscription
    
  4. Если с вашей учетной записью связаны несколько подписок, выполните следующую команду, чтобы выбрать нужную подписку.If you see multiple subscriptions associated with your account, run the following command to select the subscription that you want to work with. Замените значение SubscriptionId на идентификатор подписки Azure:Replace SubscriptionId with the ID of your Azure subscription:

    Select-AzSubscription -SubscriptionId "<SubscriptionId>"
    

Создание фабрики данныхCreate a data factory

  1. Определите переменную для имени группы ресурсов, которую в дальнейшем можно будет использовать в командах PowerShell.Define a variable for the resource group name that you use in PowerShell commands later. Скопируйте текст следующей команды в PowerShell, укажите имя группы ресурсов Azure в двойных кавычках, а затем выполните команду.Copy the following command text to PowerShell, specify a name for the Azure resource group in double quotes, and then run the command. Например, "ADFQuickStartRG".For example: "ADFQuickStartRG".

    $resourceGroupName = "ADFQuickStartRG";
    

    Если группа ресурсов уже существует, вы можете не перезаписывать ее.If the resource group already exists, you may not want to overwrite it. Назначьте переменной $ResourceGroupName другое значение и еще раз выполните команду.Assign a different value to the $ResourceGroupName variable and run the command again

  2. Чтобы создать группу ресурсов Azure, выполните следующую команду:To create the Azure resource group, run the following command:

    $ResGrp = New-AzResourceGroup $resourceGroupName -location 'East US'
    

    Если группа ресурсов уже существует, вы можете не перезаписывать ее.If the resource group already exists, you may not want to overwrite it. Назначьте переменной $ResourceGroupName другое значение и еще раз выполните команду.Assign a different value to the $ResourceGroupName variable and run the command again.

  3. Определите переменную для имени фабрики данных.Define a variable for the data factory name.

    Важно!

    Измените имя фабрики данных, чтобы оно было глобально уникальным. Например, укажите ADFTutorialFactorySP1127.

    $dataFactoryName = "ADFQuickStartFactory";
    
  4. Чтобы создать фабрику данных, выполните следующий командлет Set-AzDataFactoryV2, используя свойства Location и ResourceGroupName из переменной $ResGrp.To create the data factory, run the following Set-AzDataFactoryV2 cmdlet, using the Location and ResourceGroupName property from the $ResGrp variable:

    $DataFactory = Set-AzDataFactoryV2 -ResourceGroupName $ResGrp.ResourceGroupName `
        -Location $ResGrp.Location -Name $dataFactoryName
    

Обратите внимание на следующие моменты.Note the following points:

  • Имя фабрики данных Azure должно быть глобально уникальным.The name of the Azure data factory must be globally unique. Если появляется следующая ошибка, измените имя и повторите попытку.If you receive the following error, change the name and try again.

    The specified Data Factory name 'ADFv2QuickStartDataFactory' is already in use. Data Factory names must be globally unique.
    
  • Чтобы создать экземпляры фабрики данных, нужно назначить учетной записи пользователя, используемой для входа в Azure, роль участника, владельца либо администратора подписки Azure.To create Data Factory instances, the user account you use to log in to Azure must be a member of contributor or owner roles, or an administrator of the Azure subscription.

  • Чтобы получить список регионов Azure, в которых сейчас доступна Фабрика данных, выберите интересующие вас регионы на следующей странице, а затем разверните раздел Аналитика, чтобы найти пункт Фабрика данных: Доступность продуктов по регионам.For a list of Azure regions in which Data Factory is currently available, select the regions that interest you on the following page, and then expand Analytics to locate Data Factory: Products available by region. Хранилища данных (служба хранилища Azure, база данных SQL Azure и т. д.) и вычисления (HDInsight и т. д.), используемые фабрикой данных, могут располагаться в других регионах.The data stores (Azure Storage, Azure SQL Database, etc.) and computes (HDInsight, etc.) used by data factory can be in other regions.

Создание связанной службыCreate a linked service

Связанная служба в фабрике данных связывает хранилища данных и службы вычислений с фабрикой данных.Create linked services in a data factory to link your data stores and compute services to the data factory. В этом кратком руководстве мы создадим службу, связанную со службой хранилища Azure, которая используется и как хранилище-источник, и как хранилище-приемник.In this quickstart, you create an Azure Storage linked service that is used as both the source and sink stores. Связанная служба содержит сведения о подключении, используемые фабрикой данных для подключения к ней в среде выполнения.The linked service has the connection information that the Data Factory service uses at runtime to connect to it.

  1. Создайте JSON-файл AzureStorageLinkedService.json в папке C:\ADFv2QuickStartPSH со следующим содержимым: (Если папки ADFv2QuickStartPSH нет, создайте ее.)Create a JSON file named AzureStorageLinkedService.json in C:\ADFv2QuickStartPSH folder with the following content: (Create the folder ADFv2QuickStartPSH if it does not already exist.).

    Важно!

    Перед сохранением файла замените значения <accountname> и <accountkey> на имя вашей учетной записи хранения Azure и ее ключ.

    {
        "name": "AzureStorageLinkedService",
        "properties": {
            "type": "AzureStorage",
            "typeProperties": {
                "connectionString": {
                    "value": "DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey>;EndpointSuffix=core.windows.net",
                    "type": "SecureString"
                }
            }
        }
    }
    

    Если вы используете Блокнот, в диалоговом окне Сохранить как в поле Тип файла выберите пункт Все файлы.If you are using Notepad, select All files for the Save as type filed in the Save as dialog box. Иначе к файлу может добавиться расширение .txt.Otherwise, it may add .txt extension to the file. Например, AzureStorageLinkedService.json.txt.For example, AzureStorageLinkedService.json.txt. Если вы создали файл в проводнике до того, как открыли его в Блокноте, расширение .txt может не отображаться, так как по умолчанию установлен параметр Скрывать расширения для зарегистрированных типов файлов.If you create the file in File Explorer before opening it in Notepad, you may not see the .txt extension since the Hide extensions for known files types option is set by default. Удалите расширение .txt, прежде чем перейти к следующему шагу.Remove the .txt extension before proceeding to the next step.

  2. В PowerShell перейдите в папку ADFv2QuickStartPSH.In PowerShell, switch to the ADFv2QuickStartPSH folder.

    Set-Location 'C:\ADFv2QuickStartPSH'
    
  3. Выполните командлет Set-AzDataFactoryV2LinkedService, чтобы создать связанную службу. AzureStorageLinkedService.Run the Set-AzDataFactoryV2LinkedService cmdlet to create the linked service: AzureStorageLinkedService.

    Set-AzDataFactoryV2LinkedService -DataFactoryName $DataFactory.DataFactoryName `
        -ResourceGroupName $ResGrp.ResourceGroupName -Name "AzureStorageLinkedService" `
        -DefinitionFile ".\AzureStorageLinkedService.json"
    

    Пример выходных данных:Here is the sample output:

    LinkedServiceName : AzureStorageLinkedService
    ResourceGroupName : <resourceGroupName>
    DataFactoryName   : <dataFactoryName>
    Properties        : Microsoft.Azure.Management.DataFactory.Models.AzureStorageLinkedService
    

Создание набора данныхCreate a dataset

На этом этапе вы можете определить набор данных, который будет представлять данные для копирования из источника в приемник.In this step, you define a dataset that represents the data to copy from a source to a sink. Это набор данных типа AzureBlob.The dataset is of type AzureBlob. Он относится к связанной службе хранилища Azure, созданной на предыдущем этапе,It refers to the Azure Storage linked service you created in the previous step. и использует параметр для создания свойства folderPath.It takes a parameter to construct the folderPath property. Для входного набора данных значением этого параметра будет входной путь, который передается при помощи действия копирования в конвейере.For an input dataset, the copy activity in the pipeline passes the input path as a value for this parameter. Аналогичным образом, для выходного набора данных значением этого параметра будет выходной путь, который передается при помощи действия копирования.Similarly, for an output dataset, the copy activity passes the output path as a value for this parameter.

  1. Создайте файл JSON с именем BlobDataset.json в папке C:\ADFv2QuickStartPSH со следующим содержимым:Create a JSON file named BlobDataset.json in the C:\ADFv2QuickStartPSH folder, with the following content:

    {
        "name": "BlobDataset",
        "properties": {
            "type": "AzureBlob",
            "typeProperties": {
                "folderPath": "@{dataset().path}"
            },
            "linkedServiceName": {
                "referenceName": "AzureStorageLinkedService",
                "type": "LinkedServiceReference"
            },
            "parameters": {
                "path": {
                    "type": "String"
                }
            }
        }
    }
    
  2. Чтобы создать набор данных BlobDataset, выполните командлет Set-AzDataFactoryV2Dataset.To create the dataset: BlobDataset, run the Set-AzDataFactoryV2Dataset cmdlet.

    Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName `
        -ResourceGroupName $ResGrp.ResourceGroupName -Name "BlobDataset" `
        -DefinitionFile ".\BlobDataset.json"
    

    Пример выходных данных:Here is the sample output:

    DatasetName       : BlobDataset
    ResourceGroupName : <resourceGroupname>
    DataFactoryName   : <dataFactoryName>
    Structure         :
    Properties        : Microsoft.Azure.Management.DataFactory.Models.AzureBlobDataset
    

Создание конвейераCreate a pipeline

В этом кратком руководстве мы создадим конвейер с одним действием, которое принимает два параметра: входной и выходной путь для больших двоичных объектов.In this quickstart, you create a pipeline with one activity that takes two parameters - input blob path and output blob path. Значения для этих параметров устанавливаются при активации или выполнении конвейера.The values for these parameters are set when the pipeline is triggered/run. Для действия копирования используется тот же набор данных большого двоичного объекта, который был создан на предыдущем шаге, в качестве входного и выходного.The copy activity uses the same blob dataset created in the previous step as input and output. Если набор данных используется в качестве входного, указывается путь к входным данным.When the dataset is used as an input dataset, input path is specified. И если набор данных используется в качестве выходного, указывается путь к выходным данным.And, when the dataset is used as an output dataset, the output path is specified.

  1. Создайте файл JSON с именем Adfv2QuickStartPipeline.json в папке C:\ADFv2QuickStartPSH со следующим содержимым:Create a JSON file named Adfv2QuickStartPipeline.json in the C:\ADFv2QuickStartPSH folder with the following content:

    {
        "name": "Adfv2QuickStartPipeline",
        "properties": {
            "activities": [
                {
                    "name": "CopyFromBlobToBlob",
                    "type": "Copy",
                    "inputs": [
                        {
                            "referenceName": "BlobDataset",
                            "parameters": {
                                "path": "@pipeline().parameters.inputPath"
                            },
                            "type": "DatasetReference"
                        }
                    ],
                    "outputs": [
                        {
                            "referenceName": "BlobDataset",
                            "parameters": {
                                "path": "@pipeline().parameters.outputPath"
                            },
                            "type": "DatasetReference"
                        }
                    ],
                    "typeProperties": {
                        "source": {
                            "type": "BlobSource"
                        },
                        "sink": {
                            "type": "BlobSink"
                        }
                    }
                }
            ],
            "parameters": {
                "inputPath": {
                    "type": "String"
                },
                "outputPath": {
                    "type": "String"
                }
            }
        }
    }
    
  2. Чтобы создать конвейер Adfv2QuickStartPipeline, выполните командлет Set-AzDataFactoryV2Pipeline.To create the pipeline: Adfv2QuickStartPipeline, Run the Set-AzDataFactoryV2Pipeline cmdlet.

    $DFPipeLine = Set-AzDataFactoryV2Pipeline `
        -DataFactoryName $DataFactory.DataFactoryName `
        -ResourceGroupName $ResGrp.ResourceGroupName `
        -Name "Adfv2QuickStartPipeline" `
        -DefinitionFile ".\Adfv2QuickStartPipeline.json"
    

Создание конвейераCreate a pipeline run

На этом шаге задайте значения параметров конвейера inputPath и outputPath с фактическими значениями путей большого двоичного объекта источника и приемника.In this step, you set values for the pipeline parameters: inputPath and outputPath with actual values of source and sink blob paths. Затем можно создать конвейер с использованием этих аргументов.Then, you create a pipeline run by using these arguments.

  1. Создайте файл JSON с именем PipelineParameters.json в папке C:\ADFv2QuickStartPSH со следующим содержимым:Create a JSON file named PipelineParameters.json in the C:\ADFv2QuickStartPSH folder with the following content:

    {
        "inputPath": "adftutorial/input",
        "outputPath": "adftutorial/output"
    }
    
  2. Выполните командлет Invoke-AzDataFactoryV2Pipeline, чтобы создать конвейер и передать значения параметров.Run the Invoke-AzDataFactoryV2Pipeline cmdlet to create a pipeline run and pass in the parameter values. Командлет позволяет получить идентификатор выполнения конвейера для дальнейшего мониторинга.The cmdlet returns the pipeline run ID for future monitoring.

    $RunId = Invoke-AzDataFactoryV2Pipeline `
        -DataFactoryName $DataFactory.DataFactoryName `
        -ResourceGroupName $ResGrp.ResourceGroupName `
        -PipelineName $DFPipeLine.Name `
        -ParameterFile .\PipelineParameters.json
    

Мониторинг конвейераMonitor the pipeline run

  1. Запустите приведенный ниже скрипт PowerShell, чтобы проверять состояние выполнения, пока не закончится копирование данных.Run the following PowerShell script to continuously check the pipeline run status until it finishes copying the data. Скопируйте приведенный ниже скрипт в окно PowerShell и нажмите клавишу ВВОД.Copy/paste the following script in the PowerShell window, and press ENTER.

    while ($True) {
        $Run = Get-AzDataFactoryV2PipelineRun `
            -ResourceGroupName $ResGrp.ResourceGroupName `
            -DataFactoryName $DataFactory.DataFactoryName `
            -PipelineRunId $RunId
    
        if ($Run) {
            if ($run.Status -ne 'InProgress') {
                Write-Output ("Pipeline run finished. The status is: " +  $Run.Status)
                $Run
                break
            }
            Write-Output "Pipeline is running...status: InProgress"
        }
    
        Start-Sleep -Seconds 10
    }
    

    Вот результат примера выполнения:Here is the sample output of pipeline run:

    Pipeline is running...status: InProgress
    Pipeline run finished. The status is:  Succeeded
    
    ResourceGroupName : ADFTutorialResourceGroup
    DataFactoryName   : SPTestFactory0928
    RunId             : 0000000000-0000-0000-0000-0000000000000
    PipelineName      : Adfv2QuickStartPipeline
    LastUpdated       : 9/28/2017 8:28:38 PM
    Parameters        : {[inputPath, adftutorial/input], [outputPath, adftutorial/output]}
    RunStart          : 9/28/2017 8:28:14 PM
    RunEnd            : 9/28/2017 8:28:38 PM
    DurationInMs      : 24151
    Status            : Succeeded
    Message           :
    

    Возможны следующие ошибки:You might see the following error:

    Activity CopyFromBlobToBlob failed: Failed to detect region of linked service 'AzureStorage' : 'AzureStorageLinkedService' with error '[Region Resolver] Azure Storage failed to get address for DNS. Warning: System.Net.Sockets.SocketException (0x80004005): No such host is known
    

    Если появится сообщение об ошибке, выполните следующие действия:If you see the error, perform the following steps:

    1. В AzureStorageLinkedService.json проверьте правильность имени и ключа учетной записи хранения Azure.In the AzureStorageLinkedService.json, confirm that the name and key of your Azure Storage Account are correct.

    2. Проверьте формат строки подключения.Verify that the format of the connection string is correct. Свойства, например AccountName и AccountKey, разделяются точкой с запятой (;).The properties, for example, AccountName and AccountKey are separated by semi-colon (;) character.

    3. Если имя и ключ учетной записи взяты в угловые скобки, удалите скобки.If you have angled brackets surrounding the account name and account key, remove them.

    4. Вот пример строки подключения:Here is an example connection string:

      "connectionString": {
          "value": "DefaultEndpointsProtocol=https;AccountName=mystorageaccountname;AccountKey=mystorageaccountkey;EndpointSuffix=core.windows.net",
          "type": "SecureString"
      }
      
    5. Повторно создайте связанную службу, выполнив инструкции в разделе Создание связанной службы.Recreate the linked service by following steps in the Create a linked service section.

    6. Повторно запустите конвейер, выполнив инструкции в разделе Создание конвейера.Rerun the pipeline by following steps in the Create a pipeline run section.

    7. Выполните текущую команду мониторинга еще раз, чтобы отслеживать новый запуск конвейера.Run the current monitoring command again to monitor the new pipeline run.

  2. Запустите следующий скрипт, извлекающий сведения о выполнении действия копирования, например размер записанных и прочитанных данных.Run the following script to retrieve copy activity run details, for example, size of the data read/written.

    Write-Output "Activity run details:"
    $Result = Get-AzDataFactoryV2ActivityRun -DataFactoryName $DataFactory.DataFactoryName -ResourceGroupName $ResGrp.ResourceGroupName -PipelineRunId $RunId -RunStartedAfter (Get-Date).AddMinutes(-30) -RunStartedBefore (Get-Date).AddMinutes(30)
    $Result
    
    Write-Output "Activity 'Output' section:"
    $Result.Output -join "`r`n"
    
    Write-Output "Activity 'Error' section:"
    $Result.Error -join "`r`n"
    
  3. Убедитесь, что это выходные данные аналогичные следующему примеру результатов выполнения действия:Confirm that you see the output similar to the following sample output of activity run result:

    ResourceGroupName : ADFTutorialResourceGroup
    DataFactoryName   : SPTestFactory0928
    ActivityName      : CopyFromBlobToBlob
    PipelineRunId     : 00000000000-0000-0000-0000-000000000000
    PipelineName      : Adfv2QuickStartPipeline
    Input             : {source, sink}
    Output            : {dataRead, dataWritten, copyDuration, throughput...}
    LinkedServiceName :
    ActivityRunStart  : 9/28/2017 8:28:18 PM
    ActivityRunEnd    : 9/28/2017 8:28:36 PM
    DurationInMs      : 18095
    Status            : Succeeded
    Error             : {errorCode, message, failureType, target}
    
    Activity 'Output' section:
    "dataRead": 38
    "dataWritten": 38
    "copyDuration": 7
    "throughput": 0.01
    "errors": []
    "effectiveIntegrationRuntime": "DefaultIntegrationRuntime (West US)"
    "usedDataIntegrationUnits": 2
    "billedDuration": 14
    

Проверка выходных данныхVerify the output

Конвейер автоматически создает выходную папку в контейнере больших двоичных объектов adftutorial.The pipeline automatically creates the output folder in the adftutorial blob container. Затем он копирует файл emp.txt из входной папки в выходную.Then, it copies the emp.txt file from the input folder to the output folder.

  1. На странице контейнера adftutorial на портале Azure нажмите кнопку Обновить, чтобы появилась папка output.In the Azure portal, on the adftutorial container page, click Refresh to see the output folder.

    Обновить

  2. Щелкните output в списке папок.Click output in the folder list.

  3. Убедитесь, что файл emp.txt скопирован в папку output.Confirm that the emp.txt is copied to the output folder.

    Обновить

Очистка ресурсовClean up resources

Вы можете удалить ресурсы, созданные в ходе работы с этим руководством, двумя способами.You can clean up the resources that you created in the Quickstart in two ways. Вы можете удалить группу ресурсов Azure, которая содержит все связанные ресурсы.You can delete the Azure resource group, which includes all the resources in the resource group. Если же вы хотите сохранить другие ресурсы, удалите только фабрику данных, созданную в этом руководстве.If you want to keep the other resources intact, delete only the data factory you created in this tutorial.

При удалении группы ресурсов будут удалены все входящие в нее ресурсы, включая фабрики данных.Deleting a resource group deletes all resources including data factories in it. Выполните следующую команду, чтобы удалить всю группу ресурсов:Run the following command to delete the entire resource group:

Remove-AzResourceGroup -ResourceGroupName $resourcegroupname

Примечание: удаление группы ресурсов может занять некоторое время.Note: dropping a resource group may take some time. Наберитесь терпения.Please be patient with the process

Если вам нужно удалить только фабрику данных, а не всю группу ресурсов, выполните следующую команду:If you want to delete just the data factory, not the entire resource group, run the following command:

Remove-AzDataFactoryV2 -Name $dataFactoryName -ResourceGroupName $resourceGroupName

Дополнительная информацияNext steps

В этом примере конвейер копирует данные из одного расположения в другое в хранилище BLOB-объектов Azure.The pipeline in this sample copies data from one location to another location in an Azure blob storage. Перейдите к руководствам, чтобы узнать об использовании фабрики данных в различных сценариях.Go through the tutorials to learn about using Data Factory in more scenarios.