{ "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "factoryName": { "type": "string", "metadata": "Data Factory name", "defaultValue": "TrainingFactoryDev" }, "AzureSqlDatabase1_connectionString": { "type": "secureString", "metadata": "Secure string for 'connectionString' of 'AzureSqlDatabase1'" }, "TrainingStore01_connectionString": { "type": "secureString", "metadata": "Secure string for 'connectionString' of 'TrainingStore01'" }, "traininglak01_accountKey": { "type": "secureString", "metadata": "Secure string for 'accountKey' of 'traininglak01'" }, "traininglake01noneKV_accountKey": { "type": "secureString", "metadata": "Secure string for 'accountKey' of 'traininglake01noneKV'" }, "AzureDataLakeStorage1_properties_typeProperties_url": { "type": "string", "defaultValue": "https://adayfullofadfsa.dfs.core.windows.net" }, "GenericKeys_properties_typeProperties_baseUrl": { "type": "string", "defaultValue": "@{linkedService().baseUrl}" }, "HTTP_AWGitHub_properties_typeProperties_url": { "type": "string", "defaultValue": "https://raw.githubusercontent.com/microsoft/sql-server-samples/master/samples/databases/adventure-works/oltp-install-script/" }, "HTTP_AWProduct_properties_typeProperties_url": { "type": "string", "defaultValue": "https://raw.githubusercontent.com/microsoft/sql-server-samples/master/samples/databases/adventure-works/oltp-install-script/Product.csv" }, "TrainingKeys01_properties_typeProperties_baseUrl": { "type": "string", "defaultValue": "https://TrainingKeys01.vault.azure.net/" }, "traininglak01_properties_typeProperties_url": { "type": "string", "defaultValue": "https://traininglake01.dfs.core.windows.net" }, "traininglake01noneKV_properties_typeProperties_url": { "type": "string", "defaultValue": "https://traininglake01.dfs.core.windows.net" }, "PaulsLaptopIR_properties_typeProperties_linkedInfo_resourceId": { "type": "string", "defaultValue": "/subscriptions/77a3e40b-dd36-433c-90ca-a09f39724af3/resourcegroups/CommunityDemos/providers/Microsoft.DataFactory/factories/PaulsFunFactoryV2/integrationruntimes/WINAP71rY2YabRV" }, "SSISIntegrationRuntime_properties_typeProperties_ssisProperties_catalogInfo_catalogServerEndpoint": { "type": "string", "defaultValue": "adayfullofadf-sql.database.windows.net" }, "SSISIntegrationRuntime_properties_typeProperties_ssisProperties_catalogInfo_catalogAdminUserName": { "type": "string", "defaultValue": "sql-admin" }, "SSISIntegrationRuntime_properties_typeProperties_ssisProperties_catalogInfo_catalogAdminPassword": { "type": "secureString" } }, "variables": { "factoryId": "[concat('Microsoft.DataFactory/factories/', parameters('factoryName'))]" }, "resources": [ { "name": "[concat(parameters('factoryName'), '/1950 Activities')]", "type": "Microsoft.DataFactory/factories/pipelines", "apiVersion": "2018-06-01", "properties": { "activities": [ { "name": "50", "type": "ForEach", "dependsOn": [], "userProperties": [], "typeProperties": { "items": { "value": "@json('[\"1\",\n\"2\",\n\"3\",\n\"4\",\n\"5\",\n\"6\",\n\"7\",\n\"8\",\n\"9\",\n\"10\",\n\"11\",\n\"12\",\n\"13\",\n\"14\",\n\"15\",\n\"16\",\n\"17\",\n\"18\",\n\"19\",\n\"20\",\n\"21\",\n\"22\",\n\"23\",\n\"24\",\n\"25\",\n\"26\",\n\"27\",\n\"28\",\n\"29\",\n\"30\",\n\"31\",\n\"32\",\n\"33\",\n\"34\",\n\"35\",\n\"36\",\n\"37\",\n\"38\",\n\"39\",\n\"40\",\n\"41\",\n\"42\",\n\"43\",\n\"44\",\n\"45\",\n\"46\",\n\"47\",\n\"48\",\n\"49\",\n\"50\"]\n')", "type": "Expression" }, "batchCount": 50, "activities": [ { "name": "Wait 1 Minute 1", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 2", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 3", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 4", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 5", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 6", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 7", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 8", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 9", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 10", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 11", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 12", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 13", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 14", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 15", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 16", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 17", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 18", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 19", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 20", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 21", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 22", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 23", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 24", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 25", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 26", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 27", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 28", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 29", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 30", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 31", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 32", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 33", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 34", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 35", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 36", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 37", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 38", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } }, { "name": "Wait 1 Minute 39", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 600 } } ] } } ], "policy": { "elapsedTimeMetric": {}, "cancelAfter": {} }, "folder": { "name": "Demo Pipelines/Misc" }, "annotations": [], "lastPublishTime": "2022-02-03T14:39:03Z" }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/Wait 10')]", "type": "Microsoft.DataFactory/factories/pipelines", "apiVersion": "2018-06-01", "properties": { "activities": [ { "name": "Wait 15", "type": "Wait", "dependsOn": [], "userProperties": [], "typeProperties": { "waitTimeInSeconds": 15 } } ], "policy": { "elapsedTimeMetric": {}, "cancelAfter": {} }, "folder": { "name": "Demo Pipelines/Misc" }, "annotations": [] }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/AzureDataLakeStorage1')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "AzureBlobFS", "typeProperties": { "url": "[parameters('AzureDataLakeStorage1_properties_typeProperties_url')]" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/AzureSqlDatabase1')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "AzureSqlDatabase", "typeProperties": { "connectionString": "[parameters('AzureSqlDatabase1_connectionString')]" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/GenericKeys')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "description": "https://TrainingKeys01.vault.azure.net", "parameters": { "baseUrl": { "type": "String" } }, "annotations": [], "type": "AzureKeyVault", "typeProperties": { "baseUrl": "[parameters('GenericKeys_properties_typeProperties_baseUrl')]" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/HTTP_AWGitHub')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "HttpServer", "typeProperties": { "url": "[parameters('HTTP_AWGitHub_properties_typeProperties_url')]", "enableServerCertificateValidation": true, "authenticationType": "Anonymous" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/HTTP_AWProduct')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "HttpServer", "typeProperties": { "url": "[parameters('HTTP_AWProduct_properties_typeProperties_url')]", "enableServerCertificateValidation": true, "authenticationType": "Anonymous" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/TrainingKeys01')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "AzureKeyVault", "typeProperties": { "baseUrl": "[parameters('TrainingKeys01_properties_typeProperties_baseUrl')]" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/TrainingStore01')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "AzureBlobStorage", "typeProperties": { "connectionString": "[parameters('TrainingStore01_connectionString')]" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/traininglak01')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "AzureBlobFS", "typeProperties": { "url": "[parameters('traininglak01_properties_typeProperties_url')]", "accountKey": { "type": "SecureString", "value": "[parameters('traininglak01_accountKey')]" } } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/traininglake01noneKV')]", "type": "Microsoft.DataFactory/factories/linkedServices", "apiVersion": "2018-06-01", "properties": { "annotations": [], "type": "AzureBlobFS", "typeProperties": { "url": "[parameters('traininglake01noneKV_properties_typeProperties_url')]", "accountKey": { "type": "SecureString", "value": "[parameters('traininglake01noneKV_accountKey')]" } } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/ForDataFlowDemos')]", "type": "Microsoft.DataFactory/factories/integrationRuntimes", "apiVersion": "2018-06-01", "properties": { "type": "Managed", "typeProperties": { "computeProperties": { "location": "UK South", "dataFlowProperties": { "computeType": "General", "coreCount": 8, "timeToLive": 240 } } } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/PaulsLaptopIR')]", "type": "Microsoft.DataFactory/factories/integrationRuntimes", "apiVersion": "2018-06-01", "properties": { "type": "SelfHosted", "typeProperties": { "linkedInfo": { "resourceId": "[parameters('PaulsLaptopIR_properties_typeProperties_linkedInfo_resourceId')]", "authorizationType": "Rbac" } } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/SSISIntegrationRuntime')]", "type": "Microsoft.DataFactory/factories/integrationRuntimes", "apiVersion": "2018-06-01", "properties": { "type": "Managed", "typeProperties": { "computeProperties": { "location": "UK South", "nodeSize": "Standard_D2_v3", "numberOfNodes": 1, "maxParallelExecutionsPerNode": 2 }, "ssisProperties": { "catalogInfo": { "catalogServerEndpoint": "[parameters('SSISIntegrationRuntime_properties_typeProperties_ssisProperties_catalogInfo_catalogServerEndpoint')]", "catalogAdminUserName": "[parameters('SSISIntegrationRuntime_properties_typeProperties_ssisProperties_catalogInfo_catalogAdminUserName')]", "catalogAdminPassword": { "type": "SecureString", "value": "[parameters('SSISIntegrationRuntime_properties_typeProperties_ssisProperties_catalogInfo_catalogAdminPassword')]" }, "catalogPricingTier": "S1" }, "edition": "Standard", "licenseType": "LicenseIncluded" } } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/TrainingCredential01')]", "type": "Microsoft.DataFactory/factories/credentials", "apiVersion": "2018-06-01", "properties": { "type": "ManagedIdentity", "typeProperties": { "resourceId": "/subscriptions/450eaf4d-1124-4b6d-b490-95dedc991c1e/resourceGroups/Training/providers/Microsoft.ManagedIdentity/userAssignedIdentities/TrainingUMI" } }, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/default')]", "type": "Microsoft.DataFactory/factories/managedVirtualNetworks", "apiVersion": "2018-06-01", "properties": {}, "dependsOn": [] }, { "name": "[concat(parameters('factoryName'), '/HTTP_BIN_AWProduct')]", "type": "Microsoft.DataFactory/factories/datasets", "apiVersion": "2018-06-01", "properties": { "linkedServiceName": { "referenceName": "HTTP_AWProduct", "type": "LinkedServiceReference" }, "folder": { "name": "Labs" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "HttpServerLocation" } } }, "dependsOn": [ "[concat(variables('factoryId'), '/linkedServices/HTTP_AWProduct')]" ] }, { "name": "[concat(parameters('factoryName'), '/HTTP_BIN_AdventureWorks')]", "type": "Microsoft.DataFactory/factories/datasets", "apiVersion": "2018-06-01", "properties": { "linkedServiceName": { "referenceName": "HTTP_AWGitHub", "type": "LinkedServiceReference" }, "parameters": { "Entity": { "type": "string" } }, "folder": { "name": "Labs" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "HttpServerLocation", "relativeUrl": { "value": "@{dataset().Entity}.csv", "type": "Expression" } } } }, "dependsOn": [ "[concat(variables('factoryId'), '/linkedServices/HTTP_AWGitHub')]" ] }, { "name": "[concat(parameters('factoryName'), '/LakeFileOrderDetailLinesParquet')]", "type": "Microsoft.DataFactory/factories/datasets", "apiVersion": "2018-06-01", "properties": { "linkedServiceName": { "referenceName": "traininglake01noneKV", "type": "LinkedServiceReference" }, "folder": { "name": "Lake" }, "annotations": [], "type": "Parquet", "typeProperties": { "location": { "type": "AzureBlobFSLocation", "fileName": "OrderDetailLines.parquet", "folderPath": "Raw", "fileSystem": "datawarehouse" }, "compressionCodec": "snappy" }, "schema": [ { "name": "SalesOrderID", "type": "INT32" }, { "name": "SalesOrderDetailID", "type": "INT32" }, { "name": "OrderQty", "type": "INT32" }, { "name": "ProductID", "type": "INT32" }, { "name": "UnitPrice", "type": "DECIMAL", "precision": 19, "scale": 4 }, { "name": "UnitPriceDiscount", "type": "DECIMAL", "precision": 19, "scale": 4 }, { "name": "LineTotal", "type": "DECIMAL", "precision": 38, "scale": 6 }, { "name": "rowguid", "type": "UTF8" }, { "name": "ModifiedDate", "type": "INT96" } ] }, "dependsOn": [ "[concat(variables('factoryId'), '/linkedServices/traininglake01noneKV')]" ] }, { "name": "[concat(parameters('factoryName'), '/LakeFileOrderHeaderParquet')]", "type": "Microsoft.DataFactory/factories/datasets", "apiVersion": "2018-06-01", "properties": { "linkedServiceName": { "referenceName": "traininglake01noneKV", "type": "LinkedServiceReference" }, "folder": { "name": "Lake" }, "annotations": [], "type": "Parquet", "typeProperties": { "location": { "type": "AzureBlobFSLocation", "fileName": "OrderHeader.parquet", "folderPath": "Raw", "fileSystem": "datawarehouse" }, "compressionCodec": "snappy" }, "schema": [ { "name": "SalesOrderID", "type": "INT32" }, { "name": "RevisionNumber", "type": "INT32" }, { "name": "OrderDate", "type": "INT96" }, { "name": "DueDate", "type": "INT96" }, { "name": "ShipDate", "type": "INT96" }, { "name": "Status", "type": "INT32" }, { "name": "OnlineOrderFlag", "type": "BOOLEAN" }, { "name": "SalesOrderNumber", "type": "UTF8" }, { "name": "PurchaseOrderNumber", "type": "UTF8" }, { "name": "AccountNumber", "type": "UTF8" }, { "name": "CustomerID", "type": "INT32" }, { "name": "ShipToAddressID", "type": "INT32" }, { "name": "BillToAddressID", "type": "INT32" }, { "name": "ShipMethod", "type": "UTF8" }, { "name": "CreditCardApprovalCode", "type": "UTF8" }, { "name": "SubTotal", "type": "DECIMAL", "precision": 19, "scale": 4 }, { "name": "TaxAmt", "type": "DECIMAL", "precision": 19, "scale": 4 }, { "name": "Freight", "type": "DECIMAL", "precision": 19, "scale": 4 }, { "name": "TotalDue", "type": "DECIMAL", "precision": 19, "scale": 4 }, { "name": "Comment", "type": "UTF8" }, { "name": "rowguid", "type": "UTF8" }, { "name": "ModifiedDate", "type": "INT96" } ] }, "dependsOn": [ "[concat(variables('factoryId'), '/linkedServices/traininglake01noneKV')]" ] } ] }