Mulai Cepat: Membuat Azure Data Factory dengan menggunakan templat ARM
BERLAKU UNTUK: Azure Data Factory Azure Synapse Analytics
Tip
Cobalah Data Factory di Microsoft Fabric, solusi analitik all-in-one untuk perusahaan. Microsoft Fabric mencakup semuanya mulai dari pergerakan data hingga ilmu data, analitik real time, kecerdasan bisnis, dan pelaporan. Pelajari cara memulai uji coba baru secara gratis!
Mulai cepat ini menjelaskan cara menggunakan templat Azure Resource Manager (templat ARM) untuk membuat pabrik data Azure. Alur yang Anda buat di pabrik data ini menyalin data dari satu folder ke folder lain dalam penyimpanan Azure Blob. Untuk tutorial tentang cara mengubah data menggunakan Azure Data Factory, lihat Tutorial: Mengubah data menggunakan Spark.
Templat Azure Resource Manager adalah file JavaScript Object Notation (JSON) yang menentukan infrastruktur dan konfigurasi untuk proyek Anda. Template tersebut menggunakan sintaksis deklaratif. Anda menjelaskan penyebaran yang Dimaksudkan tanpa menulis urutan perintah pemrograman untuk membuat penyebaran.
Catatan
Artikel ini tidak memberikan pengenalan mendetail tentang layanan Data Factory. Untuk pengenalan tentang layanan Azure Data Factory, lihat Pengantar Azure Data Factory.
Jika lingkungan Anda telah memenuhi prasyarat dan Anda terbiasa menggunakan templat ARM, pilih tombol Sebarkan ke Azure. Templat akan terbuka di portal Microsoft Azure.
Prasyarat
Langganan Azure
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Membuat file
Buka editor teks seperti Notepad, dan buat file bernama emp.txt dengan konten berikut:
John, Doe
Jane, Doe
Simpan file di folder C:\ADFv2QuickStartPSH. (Jika folder belum ada, buatlah.)
Meninjau templat
Templat yang digunakan di mulai cepat ini berasal dari Templat Mulai Cepat 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')]"
}
}
}
Ada dua sumber daya yang ditentukan dalam templat:
- Microsoft.Storage/storageAccounts: Menentukan akun penyimpanan.
- Microsoft.DataFactory/factories: Membuat Azure Data Factory.
- Microsoft.DataFactory/factories/linkedServices: Membuat layanan tertaut Azure Data Factory.
- Microsoft.DataFactory/factories/datasets: Membuat himpunan data Azure Data Factory.
- Microsoft.DataFactory/factories/pipelines: Membuat alur Azure Data Factory.
Lebih banyak sampel templat Azure Data Factory dapat ditemukan di galeri templat mulai cepat.
Menyebarkan templat
Pilih gambar berikut untuk masuk ke Azure dan buka templat. Templat membuat akun Azure Data Factory, akun penyimpanan, dan kontainer blob.
Pilih atau masukkan nilai berikut.
Kecuali ditentukan, gunakan nilai default untuk membuat sumber daya Azure Data Factory:
- Langganan: Pilih langganan Azure.
- Grup sumber daya: Pilih Buat baru, masukkan nama unik untuk grup sumber daya, lalu pilih OK.
- Wilayah: Pilih lokasi. Misalnya, US Timur.
- Nama Data Factory: Gunakan nilai default.
- Lokasi: Gunakan nilai default.
- Nama Akun Penyimpanan: Gunakan nilai default.
- Kontainer Blob: Gunakan nilai default.
Meninjau sumber daya yang disebarkan
Pilih Masuk ke grup sumber daya.
Verifikasi bahwa Azure Data Factory Anda dibuat.
- Nama Azure Data Factory Anda dalam format - datafactory<uniqueid>.
Verifikasi bahwa akun penyimpanan Anda dibuat.
- Nama akun penyimpanan dalam format - storage<uniqueid>.
Pilih akun penyimpanan yang dibuat lalu pilih Kontainer.
- Di halaman Kontainer, pilih kontainer blob yang Anda buat.
- Nama kontainer blob dalam format - blob<uniqueid>.
- Di halaman Kontainer, pilih kontainer blob yang Anda buat.
Mengunggah file
Di halaman Kontainer, pilih Unggah.
Di panel sebelah kanan, pilih kotak Files, lalu telusuri dan pilih file emp.txt yang Anda buat sebelumnya.
Memperluas judul Tingkat Lanjut.
Di kotak Unggah ke folder, masukkan input.
Pilih tombol Unggah. Anda harus melihat file emp.txt dan status unggahan dalam daftar.
Pilih ikon Tutup (X) untuk menutup halaman Unggah blob.
Tetap buka halaman kontainer, karena Anda dapat menggunakannya untuk memverifikasi output di akhir mulai cepat ini.
Memulai Pemicu
Buka halaman Pabrik data, lalu pilih pabrik data yang Anda buat.
Pilih Buka di petak Buka Azure Data Factory Studio.
Pilih tab Pembuat .
Pilih alur yang dibuat - ArmtemplateSampleCopyPipeline.
Pilih Tambahkan Pemicu>Picu Sekarang.
Di panel sebelah kanan, di bawah Eksekusi alur, pilih OK.
Monitor saluran pipa
Pilih tab Monitor .
Anda melihat eksekusi aktivitas yang terkait dengan eksekusi alur. Dalam mulai cepat ini, alur hanya memiliki satu aktivitas jenis: Salin. Dengan demikian, Anda akan melihat eksekusi untuk aktivitas tersebut.
Memverifikasi file output
Alur otomatis membuat folder output dalam kontainer blob. Kemudian, menyalin file emp.txt dari folder input ke folder output.
Di portal Microsoft Azure, pada halaman Kontainer, pilih Refresh untuk melihat folder output.
Pilih output dalam daftar folder.
Pastikan bahwa emp.txt disalin ke folder output.
Membersihkan sumber daya
Anda dapat membersihkan sumber daya yang Anda buat di Mulai Cepat dengan dua cara. Anda dapat menghapus grup sumber daya Azure, yang menyertakan semua sumber daya dalam grup sumber daya. Jika Anda ingin menjaga sumber daya lain tetap utuh, hapus hanya pabrik data yang Anda buat dalam tutorial ini.
Menghapus grup sumber daya akan menghapus semua sumber daya termasuk pabrik data di dalamnya. Jalankan perintah berikut untuk menghapus seluruh grup sumber daya:
Remove-AzResourceGroup -ResourceGroupName $resourcegroupname
Jika Anda ingin menghapus pabrik data saja, dan bukan seluruh grup sumber daya, jalankan perintah berikut:
Remove-AzDataFactoryV2 -Name $dataFactoryName -ResourceGroupName $resourceGroupName
Konten terkait
Dalam mulai cepat ini, Anda membuat Azure Data Factory menggunakan templat ARM, dan memvalidasi penyebaran. Untuk mempelajari lebih lanjut tentang Azure Data Factory dan Azure Resource Manager, lihat artikel di bawah.
- Dokumentasi Azure Data Factory
- Pelajari lebih lanjut tentang Azure Resource Manager
- Mendapatkan templat ARM Azure Data Factory lainnya
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk