建立資料集
資料集是一個具名的資料檢視,單純指向或參考您想要在活動中用來作為輸入或輸出的資料。 資料集會識別不同資料存放區中的資料,例如資料表、檔案、資料夾和文件。 例如,Azure Blob 資料集會指定 Blob 儲存體中的 Blob 容器和資料夾,活動應該從中讀取資料。
Data Factory 中的資料集可以定義為資料複製活動內的物件、個別的物件,或是以程式設計方式建立的 JSON 格式,如下所示:
{
"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>",
}
}
}
下表會描述上述 JSON 的屬性:
屬性 | 描述 | 必要 |
---|---|---|
NAME | 資料集的名稱。 | Yes |
type | 資料集的類型。 指定 Data Factory 支援的其中一種類型 (例如:AzureBlob、AzureSqlTable)。 | Yes |
結構描述 | 資料集的結構描述。 | No |
typeProperties | 每個類型的類型屬性都不同 (例如:Azure Blob、Azure SQL 資料表)。 | Yes |
資料集範例
Azure Blob
在此程序中,您會建立兩個資料集:InputDataset 和 OutputDataset。 這些資料集的類型為 [二進位]。 這些資料參考名為 AzureStorageLinkedService 的 Azure 儲存體連結服務。 輸入資料集代表輸入資料夾中的來源資料。 在輸入資料集定義中,您可以指定 Blob 容器 (adftutorial)、資料夾 (input) 和包含來源資料的檔案 (emp.txt)。 輸出資料集代表複製到目的地的資料。 在輸出資料集定義中,您可以指定 Blob 容器(adftutorial)、資料夾 (output),以及資料複製到其中的檔案。
在您的桌面上,於 C 磁碟機中建立名為 ADFv2QuickStartPSH 的資料夾。
在 C:\ADFv2QuickStartPSH 資料夾中,使用下列內容建立名為 InputDataset.json 的 JSON 檔案:
{ "name": "InputDataset", "properties": { "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "fileName": "emp.txt", "folderPath": "input", "container": "adftutorial" } } } } ```
若要建立資料集:InputDataset,執行 Set-AzDataFactoryV2Dataset Cmdlet。
Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName ` -ResourceGroupName $ResGrp.ResourceGroupName -Name "InputDataset" ` -DefinitionFile ".\InputDataset.json"
以下是範例輸出:
DatasetName : InputDataset ResourceGroupName : <resourceGroupname> DataFactoryName : <dataFactoryName> Structure : Properties : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset
重複步驟以建立輸出資料集。 在 C:\ADFv2QuickStartPSH 資料夾中,使用下列內容建立名為 OutputDataset.json 的 JSON 檔案:
{ "name": "OutputDataset", "properties": { "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "folderPath": "output", "container": "adftutorial" } } } }
執行 Set-AzDataFactoryV2Dataset Cmdlet 以建立 OutDataset。
Set-AzDataFactoryV2Dataset -DataFactoryName $DataFactory.DataFactoryName ` -ResourceGroupName $ResGrp.ResourceGroupName -Name "OutputDataset" ` -DefinitionFile ".\OutputDataset.json"
以下是範例輸出:
DatasetName : OutputDataset ResourceGroupName : <resourceGroupname> DataFactoryName : <dataFactoryName> Structure : Properties : Microsoft.Azure.Management.DataFactory.Models.BinaryDataset