Erstellen von Datasets
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.
Erstellen Sie auf Ihrem Desktop auf Laufwerk C einen Ordner mit dem Namen ADFv2QuickStartPSH.
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" } } } } ```
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
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" } } } }
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