Rychlý start: Vytvoření služby Azure Data Factory pomocí šablony ARM
PLATÍ PRO: Azure Data Factory Azure Synapse Analytics
Tip
Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.
Tento rychlý start popisuje, jak pomocí šablony Azure Resource Manageru (šablony ARM) vytvořit objekt pro vytváření dat Azure. Kanál, který vytvoříte v této datové továrně, kopíruje data z jedné složky do jiné složky v úložišti objektů blob Azure. Kurz předvádějící způsoby transformace dat pomocí Azure Data Factory najdete v tématu Kurz: Transformace dat pomocí Sparku.
Šablona Azure Resource Manageru je soubor JSON (JavaScript Object Notation), který definuje infrastrukturu a konfiguraci projektu. Tato šablona používá deklarativní syntaxi. Popíšete zamýšlené nasazení, aniž byste museli psát posloupnost programovacích příkazů pro vytvoření nasazení.
Poznámka:
Tento článek neposkytuje podrobný úvod do služby Data Factory. Úvod do služby Azure Data Factory najdete v tématu Úvod do Azure Data Factory.
Pokud vaše prostředí splňuje požadavky a jste obeznámeni s používáním šablon ARM, vyberte tlačítko Nasazení do Azure. Šablona se otevře v prostředí Azure Portal.
Požadavky
Předplatné Azure
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Vytvoření souboru
Otevřete textový editor, například Poznámkový blok, a vytvořte soubor s názvem emp.txt s následujícím obsahem:
John, Doe
Jane, Doe
Uložte soubor do složky C:\ADFv2QuickStartPSH . (Pokud složka ještě neexistuje, vytvořte ji.)
Kontrola šablony
Šablona použitá v tomto rychlém startu je jednou z šablon pro rychlý start Azure.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.26.54.24096",
"templateHash": "17339534711754973978"
}
},
"parameters": {
"dataFactoryName": {
"type": "string",
"defaultValue": "[format('datafactory{0}', uniqueString(resourceGroup().id))]",
"metadata": {
"description": "Data Factory Name"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location of the data factory."
}
},
"storageAccountName": {
"type": "string",
"defaultValue": "[format('storage{0}', uniqueString(resourceGroup().id))]",
"metadata": {
"description": "Name of the Azure storage account that contains the input/output data."
}
},
"blobContainerName": {
"type": "string",
"defaultValue": "[format('blob{0}', uniqueString(resourceGroup().id))]",
"metadata": {
"description": "Name of the blob container in the Azure Storage account."
}
}
},
"variables": {
"dataFactoryLinkedServiceName": "ArmtemplateStorageLinkedService",
"dataFactoryDataSetInName": "ArmtemplateTestDatasetIn",
"dataFactoryDataSetOutName": "ArmtemplateTestDatasetOut",
"pipelineName": "ArmtemplateSampleCopyPipeline"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts/blobServices",
"apiVersion": "2023-01-01",
"name": "[format('{0}/{1}', parameters('storageAccountName'), 'default')]",
"dependsOn": [
"[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName'))]"
]
},
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2023-01-01",
"name": "[parameters('storageAccountName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_LRS"
},
"kind": "StorageV2",
"properties": {
"minimumTlsVersion": "TLS1_2",
"supportsHttpsTrafficOnly": true,
"allowBlobPublicAccess": false
}
},
{
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
"apiVersion": "2023-01-01",
"name": "[format('{0}/{1}/{2}', parameters('storageAccountName'), 'default', parameters('blobContainerName'))]",
"dependsOn": [
"[resourceId('Microsoft.Storage/storageAccounts/blobServices', parameters('storageAccountName'), 'default')]"
]
},
{
"type": "Microsoft.DataFactory/factories",
"apiVersion": "2018-06-01",
"name": "[parameters('dataFactoryName')]",
"location": "[parameters('location')]",
"identity": {
"type": "SystemAssigned"
}
},
{
"type": "Microsoft.DataFactory/factories/linkedservices",
"apiVersion": "2018-06-01",
"name": "[format('{0}/{1}', parameters('dataFactoryName'), variables('dataFactoryLinkedServiceName'))]",
"properties": {
"type": "AzureBlobStorage",
"typeProperties": {
"connectionString": "[format('DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}', parameters('storageAccountName'), listKeys(resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2023-01-01').keys[0].value)]"
}
},
"dependsOn": [
"[resourceId('Microsoft.DataFactory/factories', parameters('dataFactoryName'))]",
"[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName'))]"
]
},
{
"type": "Microsoft.DataFactory/factories/datasets",
"apiVersion": "2018-06-01",
"name": "[format('{0}/{1}', parameters('dataFactoryName'), variables('dataFactoryDataSetInName'))]",
"properties": {
"linkedServiceName": {
"referenceName": "[variables('dataFactoryLinkedServiceName')]",
"type": "LinkedServiceReference"
},
"type": "Binary",
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"container": "[parameters('blobContainerName')]",
"folderPath": "input",
"fileName": "emp.txt"
}
}
},
"dependsOn": [
"[resourceId('Microsoft.DataFactory/factories', parameters('dataFactoryName'))]",
"[resourceId('Microsoft.DataFactory/factories/linkedservices', parameters('dataFactoryName'), variables('dataFactoryLinkedServiceName'))]"
]
},
{
"type": "Microsoft.DataFactory/factories/datasets",
"apiVersion": "2018-06-01",
"name": "[format('{0}/{1}', parameters('dataFactoryName'), variables('dataFactoryDataSetOutName'))]",
"properties": {
"linkedServiceName": {
"referenceName": "[variables('dataFactoryLinkedServiceName')]",
"type": "LinkedServiceReference"
},
"type": "Binary",
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"container": "[parameters('blobContainerName')]",
"folderPath": "output"
}
}
},
"dependsOn": [
"[resourceId('Microsoft.DataFactory/factories', parameters('dataFactoryName'))]",
"[resourceId('Microsoft.DataFactory/factories/linkedservices', parameters('dataFactoryName'), variables('dataFactoryLinkedServiceName'))]"
]
},
{
"type": "Microsoft.DataFactory/factories/pipelines",
"apiVersion": "2018-06-01",
"name": "[format('{0}/{1}', parameters('dataFactoryName'), variables('pipelineName'))]",
"properties": {
"activities": [
{
"name": "MyCopyActivity",
"type": "Copy",
"typeProperties": {
"source": {
"type": "BinarySource",
"storeSettings": {
"type": "AzureBlobStorageReadSettings",
"recursive": true
}
},
"sink": {
"type": "BinarySink",
"storeSettings": {
"type": "AzureBlobStorageWriteSettings"
}
},
"enableStaging": false
},
"inputs": [
{
"referenceName": "[variables('dataFactoryDataSetInName')]",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "[variables('dataFactoryDataSetOutName')]",
"type": "DatasetReference"
}
]
}
]
},
"dependsOn": [
"[resourceId('Microsoft.DataFactory/factories', parameters('dataFactoryName'))]",
"[resourceId('Microsoft.DataFactory/factories/datasets', parameters('dataFactoryName'), variables('dataFactoryDataSetInName'))]",
"[resourceId('Microsoft.DataFactory/factories/datasets', parameters('dataFactoryName'), variables('dataFactoryDataSetOutName'))]"
]
}
],
"outputs": {
"name": {
"type": "string",
"value": "[variables('pipelineName')]"
},
"resourceId": {
"type": "string",
"value": "[resourceId('Microsoft.DataFactory/factories/pipelines', parameters('dataFactoryName'), variables('pipelineName'))]"
},
"resourceGroupName": {
"type": "string",
"value": "[resourceGroup().name]"
},
"location": {
"type": "string",
"value": "[parameters('location')]"
}
}
}
V šabloně jsou definované prostředky Azure:
- Microsoft.Storage/storageAccounts: Definuje účet úložiště.
- Microsoft.DataFactory/factory: Vytvoření služby Azure Data Factory
- Microsoft.DataFactory/factory/linkedServices: Vytvořte propojenou službu Azure Data Factory.
- Microsoft.DataFactory/factory/datasets: Vytvoření datové sady Azure Data Factory
- Microsoft.DataFactory/factory/pipelines: Vytvoření kanálu Azure Data Factory
Další ukázky šablon Azure Data Factory najdete v galerii šablon pro rychlý start.
Nasazení šablony
Vyberte následující obrázek a přihlaste se k Azure a otevřete šablonu. Šablona vytvoří účet služby Azure Data Factory, účet úložiště a kontejner objektů blob.
Vyberte nebo zadejte následující hodnoty.
Pokud není zadaný, použijte výchozí hodnoty k vytvoření prostředků Azure Data Factory:
- Předplatné: Vyberte předplatné Azure.
- Skupina prostředků: Vyberte Vytvořit nový, zadejte jedinečný název skupiny prostředků a pak vyberte OK.
- Oblast: Vyberte umístění. Například USA – východ.
- Název datové továrny: Použijte výchozí hodnotu.
- Umístění: Použijte výchozí hodnotu.
- Název účtu úložiště: Použijte výchozí hodnotu.
- Kontejner objektů blob: Použijte výchozí hodnotu.
Kontrola nasazených prostředků
Vyberte Přejít do skupiny prostředků.
Ověřte, že je služba Azure Data Factory vytvořená.
- Název vaší služby Azure Data Factory je ve formátu – datafactory<uniqueid>.
Ověřte, že je vytvořený účet úložiště.
- Název účtu úložiště je ve formátu - storage<uniqueid>.
Vyberte vytvořený účet úložiště a pak vyberte Kontejnery.
- Na stránce Kontejnery vyberte kontejner objektů blob, který jste vytvořili.
- Název kontejneru objektů blob je ve formátu – uniqueid> objektu blob<.
- Na stránce Kontejnery vyberte kontejner objektů blob, který jste vytvořili.
Odeslání souboru
Na stránce Kontejnery vyberte Nahrát.
V pravém podokně vyberte pole Soubory a pak přejděte na emp.txt soubor, který jste vytvořili dříve.
Rozbalte nadpis Upřesnit.
Do pole Nahrát do složky zadejte vstup.
vyberte tlačítko Nahrát. Měli byste vidět soubor emp.txt a stav nahrávání v seznamu.
Výběrem ikony Zavřít (X) zavřete stránku Nahrát objekt blob.
Nechte stránku kontejneru otevřenou, protože ji můžete použít k ověření výstupu na konci tohoto rychlého startu.
Aktivační událost spuštění
Přejděte na stránku Datové továrny a vyberte datovou továrnu, kterou jste vytvořili.
Na dlaždici Otevřít Azure Data Factory Studio vyberte Otevřít.
Vyberte kartu Autor .
Vyberte vytvořený kanál – ArmtemplateSampleCopyPipeline.
Vyberte Přidat aktivační událost triggeru>.
V pravém podokně pod spuštěním kanálu vyberte OK.
Monitorování kanálu
Vyberte kartu Monitorování .
Zobrazí se spuštění aktivit související s příslušným spuštěním kanálu. V tomto rychlém startu má kanál pouze jednu aktivitu typu Kopírování. V takovém případě se zobrazí spuštění této aktivity.
Ověření výstupního souboru
Kanál automaticky vytvoří výstupní složku v kontejneru objektů blob. Potom do výstupní složky zkopíruje soubor emp.txt ze vstupní složky.
Na webu Azure Portal na stránce Kontejnery vyberte Aktualizovat , aby se zobrazila výstupní složka.
Vyberte výstup v seznamu složek.
Potvrďte, že je do výstupní složky zkopírovaný soubor emp.txt.
Vyčištění prostředků
Prostředky, které jste vytvořili v rámci tohoto rychlého startu, můžete vyčistit dvěma způsoby. Můžete odstranit skupinu prostředků Azure, což zahrnuje odstranění všech prostředků v této skupině prostředků. Pokud chcete ostatní prostředky zachovat beze změny, odstraňte pouze datovou továrnu, kterou jste vytvořili v tomto kurzu.
Odstranění skupiny prostředků odstraní všechny prostředky, které v ní jsou, včetně datových továren. Spuštěním následujícího příkazu odstraníte celou skupinu prostředků:
Remove-AzResourceGroup -ResourceGroupName $resourcegroupname
Pokud chcete odstranit jenom datovou továrnu a ne celou skupinu prostředků, spusťte následující příkaz:
Remove-AzDataFactoryV2 -Name $dataFactoryName -ResourceGroupName $resourceGroupName
Související obsah
V tomto rychlém startu jste vytvořili službu Azure Data Factory pomocí šablony ARM a ověřili jste nasazení. Další informace o službě Azure Data Factory a Azure Resource Manageru najdete v následujících článcích.
- Dokumentace ke službě Azure Data Factory
- Další informace o Azure Resource Manageru
- Získání dalších šablon ARM služby Azure Data Factory