Condividi tramite


Avvio rapido: Creare un'istanza di Azure Data Factory con l'interfaccia della riga di comando di Azure

Questa guida introduttiva descrive come usare l'interfaccia della riga di comando di Azure per creare un'istanza di Azure Data Factory. La pipeline creata in questa data factory copia i dati da una cartella a un'altra in un Archiviazione BLOB di Azure. Per informazioni su come trasformare i dati con Azure Data Factory, vedere Trasformare i dati in Azure Data Factory.

Per un'introduzione al servizio Azure Data Factory, vedere Introduzione ad Azure Data Factory.

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Prerequisiti

Nota

Per creare istanze di Data Factory, l'account utente usato per accedere ad Azure deve essere un membro del ruolo collaboratore o proprietario oppure un amministratore della sottoscrizione di Azure. Per ulteriori informazioni, vedi l'argomento Ruoli di Azure.

Preparare un contenitore e un file di test

Questa guida introduttiva usa un account Archiviazione di Azure, che include un contenitore con un file.

  1. Per creare un gruppo di risorse denominato ADFQuickStartRG, usare il comando az group create :

    az group create --name ADFQuickStartRG --location eastus
    
  2. Creare un account di archiviazione usando il comando az storage account create :

    az storage account create --resource-group ADFQuickStartRG \
        --name adfquickstartstorage --location eastus
    
  3. Creare un contenitore denominato adftutorial usando il comando az storage container create :

    az storage container create --resource-group ADFQuickStartRG --name adftutorial \
        --account-name adfquickstartstorage --auth-mode key
    
  4. Nella directory locale creare un file denominato emp.txt da caricare. Se si lavora in Azure Cloud Shell, è possibile trovare la directory di lavoro corrente usando il echo $PWD comando Bash. È possibile usare i comandi Bash standard, ad esempio cat, per creare un file:

    cat > emp.txt
    This is text.
    

    Usare CTRL+D per salvare il nuovo file.

  5. Per caricare il nuovo file nel contenitore di archiviazione di Azure, usare il comando az storage blob upload :

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

    Questo comando carica in una nuova cartella denominata input.

Creare una data factory

Per creare una data factory di Azure, eseguire il comando az datafactory create :

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

Importante

Sostituire ADFTutorialFactory con un nome di data factory univoco globale, ad esempio ADFTutorialFactorySP1127.

È possibile visualizzare la data factory creata usando il comando az datafactory show :

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

Creare un servizio collegato e set di dati

Creare quindi un servizio collegato e due set di dati.

  1. Ottenere il stringa di connessione per l'account di archiviazione usando il comando az storage account show-connection-string:

    az storage account show-connection-string --resource-group ADFQuickStartRG \
        --name adfquickstartstorage --key primary
    
  2. Nella directory di lavoro creare un file JSON con questo contenuto, che include i propri stringa di connessione del passaggio precedente. Denominare il file AzureStorageLinkedService.json:

    {
        "type": "AzureBlobStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey>;EndpointSuffix=core.windows.net"
        }
    }
    
  3. Creare un servizio collegato denominato AzureStorageLinkedService, usando il comando az datafactory linked-service create :

    az datafactory linked-service create --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --linked-service-name AzureStorageLinkedService \
        --properties AzureStorageLinkedService.json
    
  4. Nella directory di lavoro creare un file JSON con questo contenuto, denominato InputDataset.json:

    {
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "Binary",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "fileName": "emp.txt",
                "folderPath": "input",
                "container": "adftutorial"
            }
        }
    }
    
  5. Creare un set di dati di input denominato InputDataset usando il comando az datafactory dataset create :

    az datafactory dataset create --resource-group ADFQuickStartRG \
        --dataset-name InputDataset --factory-name ADFTutorialFactory \
        --properties InputDataset.json
    
  6. Nella directory di lavoro creare un file JSON con questo contenuto, denominato OutputDataset.json:

    {
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "Binary",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "folderPath": "output",
                "container": "adftutorial"
            }
        }
    }
    
  7. Creare un set di dati di output denominato OutputDataset usando il comando az datafactory dataset create :

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

Creare ed eseguire la pipeline

Infine, creare ed eseguire la pipeline.

  1. Nella directory di lavoro creare un file JSON con questo contenuto denominato 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. Creare una pipeline denominata Adfv2QuickStartPipeline usando il comando az datafactory pipeline create :

    az datafactory pipeline create --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --name Adfv2QuickStartPipeline \
        --pipeline Adfv2QuickStartPipeline.json
    
  3. Eseguire la pipeline usando il comando az datafactory pipeline create-run :

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

    Questo comando restituisce un ID esecuzione. Copiarlo per usarlo nel comando successivo.

  4. Verificare che l'esecuzione della pipeline sia riuscita usando il comando az datafactory pipeline-run show :

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

È anche possibile verificare che la pipeline sia stata eseguita come previsto usando il portale di Azure. Per altre informazioni, vedere Esaminare le risorse distribuite.

Pulire le risorse

Tutte le risorse di questo argomento di avvio rapido fanno parte dello stesso gruppo di risorse. Per rimuoverli tutti, usare il comando az group delete :

az group delete --name ADFQuickStartRG

Se si usa questo gruppo di risorse per qualsiasi altro elemento, eliminare invece singole risorse. Ad esempio, per rimuovere il servizio collegato, usare il comando az datafactory linked-service delete .

In questa guida introduttiva sono stati creati i file JSON seguenti:

  • Azure Archiviazione LinkedService.json
  • InputDataset.json
  • OutputDataset.json
  • Adfv2QuickStartPipeline.json

Eliminarli usando i comandi Bash standard.