Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
DOTYCZY:
Azure Data Factory
Azure Synapse Analytics
Tip
Data Factory w usłudze Microsoft Fabric jest następną generacją Azure Data Factory z prostszą architekturą, wbudowaną sztuczną inteligencją i nowymi funkcjami. Jeśli dopiero zaczynasz integrować dane, zacznij od Fabric Data Factory. Istniejące obciążenia ADF można zaktualizować do Fabric, aby uzyskać dostęp do nowych możliwości w zakresie nauki o danych, analiz w czasie rzeczywistym oraz raportowania.
W tym przewodniku Szybki Start opisano, jak używać szablonu Azure Resource Manager (ARM) do utworzenia fabryki danych Azure. Potok, który tworzysz w tej fabryce danych, kopiuje dane z jednego folderu do drugiego w magazynie obiektów blob Azure. Aby zapoznać się z samouczkiem dotyczącym przekształcania danych przy użyciu Azure Data Factory, zapoznaj się z Samouczek: Przekształcanie danych przy użyciu platformy Spark.
Szablon Azure Resource Manager to plik JavaScript Object Notation (JSON), który definiuje infrastrukturę i konfigurację projektu. W szablonie używana jest składnia deklaratywna. Możesz opisać zamierzone wdrożenie bez konieczności pisania sekwencji poleceń programowania w celu utworzenia wdrożenia.
Uwaga
Ten artykuł nie zawiera szczegółowego wprowadzenia usługi Data Factory. Aby zapoznać się z usługą Azure Data Factory, zobacz Introduction to Azure Data Factory.
Jeśli środowisko spełnia wymagania wstępne i znasz szablony ARM, wybierz przycisk Wdróż do Azure. Szablon zostanie otwarty w portalu Azure.
Wymagania wstępne
subskrypcja Azure
Jeśli nie masz subskrypcji Azure, przed rozpoczęciem utwórz konto free.
Tworzenie pliku
Otwórz edytor tekstów, taki jak Notatnik, i utwórz plik o nazwie emp.txt z następującą zawartością:
John, Doe
Jane, Doe
Zapisz plik w folderze C:\ADFv2QuickStartPSH . (Jeśli folder jeszcze nie istnieje, utwórz go).
Przeglądanie szablonu
Szablon używany w tym przewodniku szybkiego startu pochodzi z Azure Quickstart Templates.
{
"$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')]"
}
}
}
W szablonie zdefiniowano zasoby Azure.
- Microsoft.Storage/storageAccounts: Definiuje konto przechowywania.
- Microsoft.DataFactory/factories: Utwórz Azure Data Factory.
- Microsoft. DataFactory/factory/linkedServices: Tworzenie połączonej usługi Azure Data Factory.
- Microsoft.DataFactory/fabryki/zestawy danych: Utwórz zestaw danych Azure Data Factory.
- Microsoft.DataFactory/factories/pipelines: Utwórz potok Azure Data Factory.
Więcej przykładów szablonów Azure Data Factory można znaleźć w galerii szablonów quickstart.
Wdrażanie szablonu
Wybierz poniższy obraz, aby zalogować się do Azure i otworzyć szablon. Szablon tworzy konto Azure Data Factory, konto magazynowe i kontener Blob.
Wybierz lub wprowadź następujące wartości.
Jeśli nie zostanie określony, użyj wartości domyślnych, aby utworzyć zasoby Azure Data Factory:
- Subscription: Wybierz subskrypcję Azure.
- Grupa zasobów: wybierz pozycję Utwórz nową, wprowadź unikatową nazwę grupy zasobów, a następnie wybierz przycisk OK.
- Region: wybierz lokalizację. Na przykład Wschodnie stany USA.
- Nazwa fabryki danych: użyj wartości domyślnej.
- Lokalizacja: użyj wartości domyślnej.
- Nazwa konta magazynu: użyj wartości domyślnej.
- Blob Container: użyj wartości domyślnej.
Przeglądanie wdrożonych zasobów
Wybierz Przejdź do grupy zasobów.
Sprawdź, czy utworzono Azure Data Factory.
- Nazwa Azure Data Factory jest w formacie — datafactory<uniqueid>.
Sprawdź, czy konto przechowywania zostało utworzone.
- Nazwa konta magazynu jest w formacie - storage<unikatowyidentyfikator>.
Wybierz utworzone konto magazynu, a następnie wybierz pozycję Kontenery.
-
Na stronie Kontenery wybierz utworzony kontener blobów.
- Nazwa kontenera obiektów blob ma format — blob<unikatowyid>.
-
Na stronie Kontenery wybierz utworzony kontener blobów.
Przekazywanie pliku
Na stronie Kontenery wybierz pozycję Przekaż.
W okienku po prawej stronie wybierz pole Pliki , a następnie przejdź do i wybierz utworzony wcześniej plik emp.txt .
Rozwiń nagłówek Zaawansowane.
W polu Przekaż do folderu wprowadź dane wejściowe.
Wybierz przycisk Przekaż. Na liście powinien pojawić się plik emp.txt i stan przesyłania.
Wybierz ikonę Zamknij (symbol X), aby zamknąć stronę Przekaż obiekt blob.
Pozostaw otwartą stronę kontenera, ponieważ możesz jej użyć do zweryfikowania danych wyjściowych na końcu tego szybkiego startu.
Wyzwalacz uruchamiania
Przejdź do strony Fabryki danych i wybierz utworzoną fabrykę danych.
Wybierz Otwórz na kafelku Otwórz Azure Data Factory Studio.
Wybierz kartę Autor
.Wybierz utworzoną rurę — ArmtemplateSampleCopyPipeline.
Wybierz Dodaj wyzwalacz>Wyzwól teraz.
W okienku po prawej stronie w obszarze Uruchamianie potoku wybierz przycisk OK.
Monitoruj rurociąg
Wybierz kartę Monitor
.Widzisz działania skojarzone z uruchomieniem potoku. W tym przewodniku szybkiego startu ten potok ma tylko jedną aktywność typu: Kopiuj. W związku z tym zostanie wyświetlony przebieg dla tego działania.
Weryfikowanie pliku wyjściowego
Potok danych automatycznie tworzy folder wyjściowy w kontenerze blobów. Następnie kopiuje plik emp.txt z folderu wejściowego do folderu wyjściowego.
W portalu Azure na stronie Containers wybierz pozycję Refresh aby wyświetlić folder wyjściowy.
Wybierz output na liście folderów.
Upewnij się, że plik emp.txt jest kopiowany do folderu wyjściowego.
Czyszczenie zasobów
Zasoby utworzone w ramach Szybkiego startu możesz wyczyścić na dwa sposoby. Możesz usuń grupę zasobów Azure zawierającą wszystkie zasoby w grupie zasobów. Jeśli chcesz zachować inne zasoby bez zmian, usuń tylko fabrykę danych utworzoną w tym samouczku.
Usunięcie grupy zasobów powoduje usunięcie wszystkich zasobów łącznie z fabrykami danych w nich zawartymi. Uruchom poniższe polecenie, aby usunąć całą grupę zasobów:
Remove-AzResourceGroup -ResourceGroupName $resourcegroupname
Jeśli chcesz usunąć tylko fabrykę danych, a nie całą grupę zasobów, uruchom następujące polecenie:
Remove-AzDataFactoryV2 -Name $dataFactoryName -ResourceGroupName $resourceGroupName
Powiązana zawartość
W tym szybkim starcie utworzono Azure Data Factory przy użyciu szablonu ARM i sprawdzono wdrożenie. Aby dowiedzieć się więcej na temat Azure Data Factory i Azure Resource Manager, przejdź do poniższych artykułów.
- dokumentacja Azure Data Factory
- Dowiedz się więcej o Azure Resource Manager
- Pobierz inne szablony Azure Data Factory ARM