Creare i set di dati
Un set di dati è una visualizzazione dati denominata che punta o fa riferimento ai dati da usare come input e output nelle attività. I set di dati identificano i dati all'interno dei diversi archivi dati, come tabelle, file, cartelle e documenti. Un set di dati BLOB di Azure, ad esempio, specifica il contenitore BLOB e la cartella nell'archiviazione BLOB da cui l'attività deve leggere i dati.
Un set di dati in Data Factory può essere definito come oggetto all'interno dell'attività Copia dati, come oggetto separato o in un formato JSON per la creazione a livello di codice come segue:
{
"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>",
}
}
}
La tabella seguente descrive le proprietà nel codice JSON precedente:
Proprietà | Descrizione | Richiesto |
---|---|---|
name | Nome del set di dati. | Sì |
Tipo | Tipo del set di dati. Specificare uno dei tipi supportati da Data Factory, ad esempio AzureBlob o AzureSqlTable. | Sì |
Schema | Schema del set di dati. | No |
typeProperties | Le proprietà del tipo sono diverse per ogni tipo, ad esempio: BLOB di Azure, tabella SQL di Azure. | Sì |
Esempio di set di dati
BLOB Azure
In questa procedura vengono creati due set di dati, InputDataset e OutputDataset. I set di dati sono di tipo Binary. Fanno riferimento al servizio collegato Archiviazione di Azure denominato AzureStorageLinkedService. Il set di dati di input rappresenta i dati di origini nella cartella di input. Nella definizione del set di dati di input specificare il contenitore BLOB (adftutorial), la cartella (input) e il file (emp.txt) che includono i dati di origine. Il set di dati di output rappresenta i dati copiati nella destinazione. Nella definizione del set di dati di output specificare il contenitore BLOB (adftutorial), la cartella (output) e il file in cui vengono copiati i dati.
Nel desktop creare una cartella denominata ADFv2QuickStartPSH nell'unità C.
Creare un file JSON denominato InputDataset.json nella cartella C:\ADFv2QuickStartPSH, con il contenuto seguente:
{ "name": "InputDataset", "properties": { "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "fileName": "emp.txt", "folderPath": "input", "container": "adftutorial" } } } } ```
Per creare il set di dati InputDataset, eseguire il cmdlet Set-AzDataFactoryV2Dataset.
Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName ` -ResourceGroupName $ResGrp.ResourceGroupName -Name "InputDataset" ` -DefinitionFile ".\InputDataset.json"
Di seguito è riportato l'output di esempio:
DatasetName : InputDataset ResourceGroupName : <resourceGroupname> DataFactoryName : <dataFactoryName> Structure : Properties : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset
Ripetere la procedura per creare il set di dati di output. Creare un file JSON denominato OutputDataset.json nella cartella C:\ADFv2QuickStartPSH, con il contenuto seguente:
{ "name": "OutputDataset", "properties": { "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "folderPath": "output", "container": "adftutorial" } } } }
Eseguire il cmdlet Set-AzDataFactoryV2Dataset per creare il set di dati OutDataset.
Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName ` -ResourceGroupName $ResGrp.ResourceGroupName -Name "OutputDataset" ` -DefinitionFile ".\OutputDataset.json"
Di seguito è riportato l'output di esempio:
DatasetName : OutputDataset ResourceGroupName : <resourceGroupname> DataFactoryName : <dataFactoryName> Structure : Properties : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset