Dela via


Snabbstart: Skapa en Azure Data Factory med Hjälp av Azure CLI

Den här snabbstarten beskriver hur du använder Azure CLI för att skapa en Azure Data Factory. Pipelinen som du skapar i den här datafabriken kopierar data från en mapp till en annan mapp i en Azure Blob Storage. Information om hur du transformerar data med Azure Data Factory finns i Transformera data i Azure Data Factory.

En introduktion till Azure Data Factory-tjänsten finns i Introduktion till Azure Data Factory.

Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.

Förutsättningar

Kommentar

Om du vill skapa Data Factory-instanser måste det användarkonto du använder för att logga in på Azure vara medlem av rollerna deltagare eller ägare, eller vara administratör för Azure-prenumerationen. Mer information finns i Azure-roller.

Förbereda en container och testfil

Den här snabbstarten använder ett Azure Storage-konto, som innehåller en container med en fil.

  1. Om du vill skapa en resursgrupp med namnet ADFQuickStartRGanvänder du kommandot az group create :

    az group create --name ADFQuickStartRG --location eastus
    
  2. Skapa ett lagringskonto med kommandot az storage account create :

    az storage account create --resource-group ADFQuickStartRG \
        --name adfquickstartstorage --location eastus
    
  3. Skapa en container med namnet adftutorial med kommandot az storage container create :

    az storage container create --resource-group ADFQuickStartRG --name adftutorial \
        --account-name adfquickstartstorage --auth-mode key
    
  4. I den lokala katalogen skapar du en fil med namnet som ska emp.txt laddas upp. Om du arbetar i Azure Cloud Shell kan du hitta den aktuella arbetskatalogen echo $PWD med hjälp av Bash-kommandot. Du kan använda Standard Bash-kommandon, till exempel cat, för att skapa en fil:

    cat > emp.txt
    This is text.
    

    Spara den nya filen med Ctrl+D .

  5. Om du vill ladda upp den nya filen till din Azure Storage-container använder du kommandot az storage blob upload :

    az storage blob upload --account-name adfquickstartstorage --name input/emp.txt \
        --container-name adftutorial --file emp.txt --auth-mode key
    

    Det här kommandot laddas upp till en ny mapp med namnet input.

Skapa en datafabrik

Om du vill skapa en Azure-datafabrik kör du kommandot az datafactory create :

az datafactory create --resource-group ADFQuickStartRG \
    --factory-name ADFTutorialFactory

Viktigt!

Ersätt ADFTutorialFactory med ett globalt unikt datafabriksnamn, till exempel ADFTutorialFactorySP1127.

Du kan se datafabriken som du skapade med kommandot az datafactory show :

az datafactory show --resource-group ADFQuickStartRG \
    --factory-name ADFTutorialFactory

Skapa en länkad tjänst och datauppsättningar

Skapa sedan en länkad tjänst och två datauppsättningar.

  1. Hämta anslutningssträng för ditt lagringskonto med kommandot az storage account show-connection-string:

    az storage account show-connection-string --resource-group ADFQuickStartRG \
        --name adfquickstartstorage --key primary
    
  2. I arbetskatalogen skapar du en JSON-fil med det här innehållet, som innehåller dina egna anslutningssträng från föregående steg. Ge filen AzureStorageLinkedService.jsonnamnet :

    {
        "type": "AzureBlobStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey>;EndpointSuffix=core.windows.net"
        }
    }
    
  3. Skapa en länkad tjänst med namnet AzureStorageLinkedService, med kommandot az datafactory linked-service create :

    az datafactory linked-service create --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --linked-service-name AzureStorageLinkedService \
        --properties AzureStorageLinkedService.json
    
  4. I arbetskatalogen skapar du en JSON-fil med det här innehållet med namnet InputDataset.json:

    {
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "Binary",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "fileName": "emp.txt",
                "folderPath": "input",
                "container": "adftutorial"
            }
        }
    }
    
  5. Skapa en indatauppsättning med namnet InputDataset med kommandot az datafactory dataset create :

    az datafactory dataset create --resource-group ADFQuickStartRG \
        --dataset-name InputDataset --factory-name ADFTutorialFactory \
        --properties InputDataset.json
    
  6. I arbetskatalogen skapar du en JSON-fil med det här innehållet med namnet OutputDataset.json:

    {
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "Binary",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "folderPath": "output",
                "container": "adftutorial"
            }
        }
    }
    
  7. Skapa en utdatauppsättning med namnet OutputDataset med kommandot az datafactory dataset create :

    az datafactory dataset create --resource-group ADFQuickStartRG \
        --dataset-name OutputDataset --factory-name ADFTutorialFactory \
        --properties OutputDataset.json
    

Skapa och köra pipelinen

Skapa och kör slutligen pipelinen.

  1. I arbetskatalogen skapar du en JSON-fil med det här innehållet med namnet Adfv2QuickStartPipeline.json:

    {
        "name": "Adfv2QuickStartPipeline",
        "properties": {
            "activities": [
                {
                    "name": "CopyFromBlobToBlob",
                    "type": "Copy",
                    "dependsOn": [],
                    "policy": {
                        "timeout": "7.00:00:00",
                        "retry": 0,
                        "retryIntervalInSeconds": 30,
                        "secureOutput": false,
                        "secureInput": false
                    },
                    "userProperties": [],
                    "typeProperties": {
                        "source": {
                            "type": "BinarySource",
                            "storeSettings": {
                                "type": "AzureBlobStorageReadSettings",
                                "recursive": true
                            }
                        },
                        "sink": {
                            "type": "BinarySink",
                            "storeSettings": {
                                "type": "AzureBlobStorageWriteSettings"
                            }
                        },
                        "enableStaging": false
                    },
                    "inputs": [
                        {
                            "referenceName": "InputDataset",
                            "type": "DatasetReference"
                        }
                    ],
                    "outputs": [
                        {
                            "referenceName": "OutputDataset",
                            "type": "DatasetReference"
                        }
                    ]
                }
            ],
            "annotations": []
        }
    }
    
  2. Skapa en pipeline med namnet Adfv2QuickStartPipeline med kommandot az datafactory pipeline create :

    az datafactory pipeline create --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --name Adfv2QuickStartPipeline \
        --pipeline Adfv2QuickStartPipeline.json
    
  3. Kör pipelinen med kommandot az datafactory pipeline create-run :

    az datafactory pipeline create-run --resource-group ADFQuickStartRG \
        --name Adfv2QuickStartPipeline --factory-name ADFTutorialFactory
    

    Det här kommandot returnerar ett körnings-ID. Kopiera den för användning i nästa kommando.

  4. Kontrollera att pipelinekörningen lyckades med kommandot az datafactory pipeline-run show :

    az datafactory pipeline-run show --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --run-id 00000000-0000-0000-0000-000000000000
    

Du kan också kontrollera att din pipeline kördes som förväntat med hjälp av Azure-portalen. Mer information finns i Granska distribuerade resurser.

Rensa resurser

Alla resurser i den här snabbstarten ingår i samma resursgrupp. Om du vill ta bort alla använder du kommandot az group delete :

az group delete --name ADFQuickStartRG

Om du använder den här resursgruppen för något annat tar du i stället bort enskilda resurser. Om du till exempel vill ta bort den länkade tjänsten använder du kommandot az datafactory linked-service delete .

I den här snabbstarten skapade du följande JSON-filer:

  • AzureStorageLinkedService.json
  • InputDataset.json
  • OutputDataset.json
  • Adfv2QuickStartPipeline.json

Ta bort dem med bash-standardkommandon.