Freigeben über


Schnellstart: Erstellen einer Azure Data Factory mit Azure CLI

In dieser Schnellstartanleitung wird beschrieben, wie Sie Azure CLI zum Erstellen einer Azure Data Factory verwenden. Die in dieser Data Factory erstellte Pipeline kopiert Daten aus einem Ordner in einen anderen Ordner in Azure Blob Storage. Informationen zum Transformieren von Daten mithilfe von Azure Data Factory finden Sie unter Transformieren von Daten in Azure Data Factory.

Eine Einführung in den Azure Data Factory-Dienst finden Sie in der Einführung in Azure Data Factory.

Wenn Sie noch kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.

Voraussetzungen

Hinweis

Zum Erstellen von Data Factory-Instanzen muss das Benutzerkonto, mit dem Sie sich bei Azure anmelden, Mitglied der Rolle "Mitwirkender" oder "Besitzer" oder ein Administrator des Azure-Abonnements sein. Weitere Informationen finden Sie unter Azure-Rollen.

Vorbereiten eines Containers und einer Testdatei

Diese Schnellstartanleitung verwendet ein Azure Storage-Konto, das einen Container mit einer Datei enthält.

  1. Um eine Ressourcengruppe namens ADFQuickStartRGzu erstellen, verwenden Sie den Befehl "az group create ":

    az group create --name ADFQuickStartRG --location eastus
    
  2. Erstellen Sie ein Speicherkonto mithilfe des Befehls "az storage account create ":

    az storage account create --resource-group ADFQuickStartRG \
        --name adfquickstartstorage --location eastus
    
  3. Erstellen Sie einen Container mit dem Namen adftutorial mithilfe des Befehls az storage container create.

    az storage container create --resource-group ADFQuickStartRG --name adftutorial \
        --account-name adfquickstartstorage --auth-mode key
    
  4. Erstellen Sie im lokalen Verzeichnis eine Datei emp.txt , die hochgeladen werden soll. Wenn Sie in Azure Cloud Shell arbeiten, finden Sie das aktuelle Arbeitsverzeichnis mithilfe des echo $PWD Bash-Befehls. Sie können standardmäßige Bash-Befehle, wie cat, verwenden, um eine Datei zu erstellen.

    cat > emp.txt
    This is text.
    

    Verwenden Sie STRG+D , um die neue Datei zu speichern.

  5. Um die neue Datei in Ihren Azure Storage-Container hochzuladen, verwenden Sie den Befehl "az storage blob upload ":

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

    Dieser Befehl lädt in einen neuen Ordner mit dem Namen inputhoch.

Datenfabrik erstellen

Führen Sie den Befehl "Az datafactory create " aus, um eine Azure Data Factory zu erstellen:

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

Von Bedeutung

Ersetzen Sie ADFTutorialFactory durch einen global eindeutigen Datenfactorynamen, z. B. ADFTutorialFactorySP1127.

Die von Ihnen erstellte Data Factory-Instanz können Sie mithilfe des Befehls az datafactory show anzeigen:

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

Verknüpften Service und Datensätze erstellen

Erstellen Sie als Nächstes einen verknüpften Dienst und zwei Datasets.

  1. Rufen Sie die Verbindungszeichenfolge für Ihr Speicherkonto mithilfe des Befehls "az storage account show-connection-string " ab:

    az storage account show-connection-string --resource-group ADFQuickStartRG \
        --name adfquickstartstorage --key primary
    
  2. Erstellen Sie in Ihrem Arbeitsverzeichnis eine JSON-Datei mit diesem Inhalt, die Ihre eigene Verbindungszeichenfolge aus dem vorherigen Schritt enthält. Benennen Sie die Datei AzureStorageLinkedService.json:

    {
        "type": "AzureBlobStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey>;EndpointSuffix=core.windows.net"
        }
    }
    
  3. Erstellen Sie einen verknüpften Dienst mit dem Namen AzureStorageLinkedService, indem Sie den Befehl az datafactory linked-service create verwenden.

    az datafactory linked-service create --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --linked-service-name AzureStorageLinkedService \
        --properties AzureStorageLinkedService.json
    
  4. Erstellen Sie in Ihrem Arbeitsverzeichnis eine JSON-Datei mit diesem Inhalt namens InputDataset.json:

    {
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "Binary",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "fileName": "emp.txt",
                "folderPath": "input",
                "container": "adftutorial"
            }
        }
    }
    
  5. Erstellen Sie ein Eingabedatenset namens InputDataset mit dem Befehl az datafactory dataset create.

    az datafactory dataset create --resource-group ADFQuickStartRG \
        --dataset-name InputDataset --factory-name ADFTutorialFactory \
        --properties InputDataset.json
    
  6. Erstellen Sie in Ihrem Arbeitsverzeichnis eine JSON-Datei mit diesem Inhalt namens OutputDataset.json:

    {
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "annotations": [],
        "type": "Binary",
        "typeProperties": {
            "location": {
                "type": "AzureBlobStorageLocation",
                "folderPath": "output",
                "container": "adftutorial"
            }
        }
    }
    
  7. Erstellen Sie ein Ausgabedataset namens OutputDataset, indem Sie den Befehl az datafactory dataset create verwenden:

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

Erstellung und Ausführung der Pipeline

Erstellen Sie abschließend die Pipeline, und führen Sie sie aus.

  1. Erstellen Sie in Ihrem Arbeitsverzeichnis eine JSON-Datei mit diesem Inhalt mit dem Namen 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. Erstellen Sie eine Pipeline namens Adfv2QuickStartPipeline durch Nutzung des Befehls az datafactory pipeline create:

    az datafactory pipeline create --resource-group ADFQuickStartRG \
        --factory-name ADFTutorialFactory --name Adfv2QuickStartPipeline \
        --pipeline Adfv2QuickStartPipeline.json
    
  3. Führen Sie die Pipeline mit dem Befehl "Az datafactory pipeline create-run" aus :

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

    Dieser Befehl gibt eine Ausführungs-ID zurück. Kopieren Sie sie für die Verwendung im nächsten Befehl.

  4. Stellen Sie sicher, dass der Pipelinelauf erfolgreich war, indem Sie den Befehl "az datafactory pipeline-run show" verwenden:

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

Sie können auch überprüfen, ob Ihre Pipeline wie erwartet ausgeführt wurde, indem Sie das Azure-Portal verwenden. Weitere Informationen finden Sie unter Überprüfen der bereitgestellten Ressourcen.

Bereinigen von Ressourcen

Alle Ressourcen in dieser Schnellstartanleitung sind Teil derselben Ressourcengruppe. Wenn Sie alle entfernen möchten, verwenden Sie den Befehl " az group delete ":

az group delete --name ADFQuickStartRG

Wenn Sie diese Ressourcengruppe für andere Elemente verwenden, löschen Sie stattdessen einzelne Ressourcen. Um beispielsweise den verknüpften Dienst zu entfernen, verwenden Sie den Befehl zum Löschen von az datafactory linked-service .

In dieser Schnellstartanleitung haben Sie die folgenden JSON-Dateien erstellt:

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

Löschen Sie sie mithilfe standardmäßiger Bash-Befehle.