Rövid útmutató: Azure Data Factory létrehozása ARM-sablonnal
A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics
Tipp.
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
Ez a rövid útmutató bemutatja, hogyan hozhat létre Azure Data Factoryt egy Azure Resource Manager-sablon (ARM-sablon) használatával. Az adat-előállítóban létrehozott folyamat adatokat másol egy Azure-blobtároló egyik mappájából egy másikba. Az adatok Azure Data Factoryval történő átalakításának útmutatásáért olvassa el az az adatok Spark segítségével történő átalakítását ismertető oktatóanyagot.
Az Azure Resource Manager-sablon egy JavaScript Object Notation (JSON) fájl, amely meghatározza a projekt infrastruktúráját és konfigurációját. A sablon deklaratív szintaxist használ. Az üzembe helyezés létrehozásához szükséges programozási parancsok sorozatának megírása nélkül írhatja le a tervezett üzembe helyezést.
Feljegyzés
Ez a cikk nem mutatja be részletesen a Data Factory szolgáltatást. Ha szeretné megismerni az Azure Data Factoryt, tekintse meg Az Azure Data Factory bemutatását.
Ha a környezet megfelel az előfeltételeknek, és már ismeri az ARM-sablonokat, kattintson az Üzembe helyezés az Azure-ban gombra. A sablon az Azure Portalon fog megnyílni.
Előfeltételek
Azure-előfizetés
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Fájl létrehozása
Nyisson meg egy szövegszerkesztőt, például a Jegyzettömbet, és hozzon létre egy emp.txt nevű fájlt a következő tartalommal:
John, Doe
Jane, Doe
Mentse a fájlt a C:\ADFv2QuickStartPSH mappába. (Ha a mappa még nem létezik, hozza létre.)
Sablon áttekintése
Az ebben a gyorsútmutatóban használt sablon az Azure-gyorssablonok közül származik.
{
"$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')]"
}
}
}
A sablonban azure-erőforrások vannak definiálva:
- Microsoft.Storage/storageAccounts: Definiál egy tárfiókot.
- Microsoft.DataFactory/factorys: Azure Data Factory létrehozása.
- Microsoft.DataFactory/factoryies/linkedServices: Azure Data Factory társított szolgáltatás létrehozása.
- Microsoft.DataFactory/factories/datasets: Azure Data Factory-adatkészlet létrehozása.
- Microsoft.DataFactory/factoryies/pipelines: Azure Data Factory-folyamat létrehozása.
További Azure Data Factory-sablonminták a rövid útmutató sablongyűjteményében találhatók.
A sablon üzembe helyezése
Kattintson az alábbi gombra az Azure-ba való bejelentkezéshez és egy sablon megnyitásához. A sablon létrehoz egy Azure Data Factory-fiókot, egy tárfiókot és egy blobtárolót.
Válassza ki vagy adja meg a következő értékeket.
Ha nincs megadva, használja az alapértelmezett értékeket az Azure Data Factory-erőforrások létrehozásához:
- Előfizetés: válasszon ki egy Azure-előfizetést.
- Erőforráscsoport: Válassza az Új létrehozása lehetőséget, adjon meg egy egyedi nevet az erőforráscsoportnak, majd kattintson az OK gombra.
- Régió: Válasszon egy helyet. Például az USA keleti régiója.
- Data Factory neve: Alapértelmezett érték használata.
- Hely: Alapértelmezett érték használata.
- Tárfiók neve: Alapértelmezett érték használata.
- Blobtároló: Alapértelmezett érték használata.
Üzembe helyezett erőforrások áttekintése
Válassza az Ugrás az erőforráscsoportra lehetőséget.
Ellenőrizze, hogy létrejött-e az Azure Data Factory.
- Az Azure Data Factory neve formátuma – egyedi> adatfactory<.
Ellenőrizze, hogy létrejött-e a tárfiókja.
- A tárfiók neve formátuma – storage<uniqueid>.
Válassza ki a létrehozott tárfiókot, majd válassza a Tárolók lehetőséget.
- A Tárolók lapon válassza ki a létrehozott blobtárolót.
- A blobtároló neve formátuma – blob<uniqueid>.
- A Tárolók lapon válassza ki a létrehozott blobtárolót.
Fájl feltöltése
A Tárolók lapon válassza a Feltöltés lehetőséget.
A jobb oldali ablaktáblán válassza a Fájlok mezőt, majd keresse meg és jelölje ki a korábban létrehozott emp.txt fájlt.
Bontsa ki a Speciális címsort.
A Feltöltés mappába mezőbe írja be a bemenetet.
Kattintson a Feltöltés gombra. A listában meg kell jelennie az emp.txt fájlnak és a feltöltés állapotának.
A Blob feltöltése lap bezárásához válassza a Bezárás ikont (X).
Tartsa nyitva a tárolólapot, mert a rövid útmutató végén ellenőrizheti a kimenetet.
Trigger indítása
Lépjen az Adat-előállítók lapra, és válassza ki a létrehozott adat-előállítót.
Válassza a Megnyitás lehetőséget az Azure Data Factory Studio megnyitása csempén.
Válassza a Szerző lapot .
Válassza ki a létrehozott folyamatot – ArmtemplateSampleCopyPipeline.
Válassza az Eseményindító>hozzáadása trigger most lehetőséget.
A folyamatfuttatás jobb oldali ablaktábláján válassza az OK gombot.
A folyamat monitorozása
Válassza a Figyelés lapot .
Itt a folyamat futtatásához kapcsolódó tevékenységfuttatások láthatóak. Ebben a rövid útmutatóban a folyamat csak egyetlen tevékenységtípussal rendelkezik: Másolás. Így megjelenik egy futtatás ehhez a tevékenységhez.
A kimeneti fájl ellenőrzése
A folyamat automatikusan létrehoz egy kimeneti mappát a blobtárolóban. Ezután átmásolja az emp.txt fájlt a bemeneti mappából a kimeneti mappába.
Az Azure Portal Tárolók lapján válassza a Frissítés lehetőséget a kimeneti mappa megtekintéséhez.
Válassza ki a kimenetet a mappalistában.
Ellenőrizze, hogy az emp.txt fájl bekerült-e a kimeneti mappába.
Az erőforrások eltávolítása
Kétféleképpen távolíthatja el a rövid útmutatóban létrehozott erőforrásokat. Törölheti az Azure-erőforráscsoportot, amely tartalmazza az erőforráscsoportban lévő összes erőforrást. Ha a többi erőforrást érintetlenül szeretné hagyni, csak az ebben az oktatóanyagban létrehozott adat-előállítót törölje.
Egy erőforráscsoport törlése a csoportban található összes erőforrást törli, beleértve az adat-előállítókat is. Az alábbi parancsot futtassa a teljes erőforráscsoport törléséhez:
Remove-AzResourceGroup -ResourceGroupName $resourcegroupname
Ha csak az adat-előállítót szeretné törölni, és nem a teljes erőforráscsoportot, futtassa a következő parancsot:
Remove-AzDataFactoryV2 -Name $dataFactoryName -ResourceGroupName $resourceGroupName
Kapcsolódó tartalom
Ebben a rövid útmutatóban létrehozott egy Azure Data Factoryt egy ARM-sablon használatával, és érvényesítette az üzembe helyezést. Ha többet szeretne megtudni az Azure Data Factoryről és az Azure Resource Managerről, folytassa az alábbi cikkekkel.
- Az Azure Data Factory dokumentációja
- További információ az Azure Resource Managerről
- Egyéb Azure Data Factory ARM-sablonok beszerzése