Erstellen von Datasets

Abgeschlossen

Ein Dataset ist eine benannte Ansicht von Daten, die einfach auf die Daten verweist, die Sie in Ihren Aktivitäten als Ein- und Ausgabe verwenden möchten. Datasets bestimmen Daten in verschiedenen Datenspeichern, z.B. Tabellen, Dateien, Ordnern und Dokumenten. Ein Azure-Blobdataset kann beispielsweise den Blobcontainer und -ordner in Blob Storage angeben, aus dem die Aktivität die Daten lesen soll.

Ein Dataset in Data Factory kann als Objekt innerhalb der Aktivität „Daten kopieren“, als separates Objekt oder in einem JSON-Format für die programmgesteuerte Erstellung wie folgt definiert werden:

{
    "name": "<name of dataset>",
    "properties": {
        "type": "<type of dataset: AzureBlob, AzureSql etc...>",
        "linkedServiceName": {
                "referenceName": "<name of linked service>",
                "type": "LinkedServiceReference",
        },
        "schema": [
            {
                "name": "<Name of the column>",
                "type": "<Name of the type>"
            }
        ],
        "typeProperties": {
            "<type specific property>": "<value>",
            "<type specific property 2>": "<value 2>",
        }
    }
}

In der folgenden Tabelle werden die Eigenschaften im obigen JSON-Code beschrieben:

Eigenschaft Beschreibung Erforderlich
name Name des Datasets. Ja
type Typ des Datasets. Geben Sie einen der von Data Factory unterstützten Typen an (z.B. AzureBlob, AzureSqlTable). Ja
Schema Schema des Datasets. Nein
typeProperties Die Typeigenschaften unterscheiden sich je nach Typ (z.B. Azure-Blob, Azure SQL-Tabelle). Ja

Beispiel für ein Dataset

Azure Blob

In diesem Verfahren erstellen Sie zwei Datasets: InputDataset und OutputDataset. Diese Datasets sind vom Typ Binär. Sie verweisen auf den verknüpften Azure Storage-Dienst namens „AzureStorageLinkedService“. Das Eingabedataset stellt die Quelldaten im Eingabeordner dar. In der Definition des Eingabedatasets geben Sie den Blobcontainer (adftutorial), den Ordner (input) und die Datei (emp.txt) mit den Quelldaten an. Das Ausgabedataset stellt die Daten dar, die zum Ziel kopiert werden. In der Definition des Ausgabedatasets geben Sie den Blobcontainer (adftutorial), den Ordner (output) und die Datei an, in die die Daten kopiert werden.

  1. Erstellen Sie auf Ihrem Desktop auf Laufwerk C einen Ordner mit dem Namen ADFv2QuickStartPSH.

  2. Erstellen Sie im Ordner C:\ADFv2QuickStartPSH eine JSON-Datei mit dem Namen InputDataset.json und dem folgenden Inhalt:

      {
          "name": "InputDataset",
          "properties": {
              "linkedServiceName": {
                  "referenceName": "AzureStorageLinkedService",
                  "type": "LinkedServiceReference"
              },
              "annotations": [],
              "type": "Binary",
              "typeProperties": {
                  "location": {
                      "type": "AzureBlobStorageLocation",
                      "fileName": "emp.txt",
                      "folderPath": "input",
                      "container": "adftutorial"
                  }
              }
          }
      }
    
      ```
    
    
  3. Führen Sie zum Erstellen des Datasets InputDataset das Cmdlet Set-AzDataFactoryV2Dataset aus.

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

    Hier ist die Beispielausgabe:

    DatasetName       : InputDataset
    ResourceGroupName : <resourceGroupname>
    DataFactoryName   : <dataFactoryName>
    Structure         :
    Properties        : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset
    
  4. Wiederholen Sie die Schritte zum Erstellen des Ausgabedatasets. Erstellen Sie im Ordner C:\ADFv2QuickStartPSH eine JSON-Datei mit dem Namen OutputDataset.json und dem folgenden Inhalt:

    {
        "name": "OutputDataset",
        "properties": {
            "linkedServiceName": {
                "referenceName": "AzureStorageLinkedService",
                "type": "LinkedServiceReference"
            },
            "annotations": [],
            "type": "Binary",
            "typeProperties": {
                "location": {
                    "type": "AzureBlobStorageLocation",
                    "folderPath": "output",
                    "container": "adftutorial"
                }
            }
        }
    }
    
  5. Führen Sie das Cmdlet Set-AzDataFactoryV2Dataset aus, um OutDataset zu erstellen:

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

    Hier ist die Beispielausgabe:

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