{
	"name": "Scale Out Level 1",
	"properties": {
		"activities": [
			{
				"name": "Get Bucket Ids",
				"type": "Lookup",
				"dependsOn": [
					{
						"activity": "Reset And Log Start",
						"dependencyConditions": [
							"Succeeded"
						]
					},
					{
						"activity": "Reset Bucket Process Map",
						"dependencyConditions": [
							"Succeeded"
						]
					}
				],
				"policy": {
					"timeout": "7.00:00:00",
					"retry": 0,
					"retryIntervalInSeconds": 30,
					"secureOutput": false,
					"secureInput": false
				},
				"userProperties": [],
				"typeProperties": {
					"source": {
						"type": "AzureSqlSource",
						"sqlReaderStoredProcedureName": "[dbo].[GetBuckets]",
						"partitionOption": "None"
					},
					"dataset": {
						"referenceName": "GetSetMetadata",
						"type": "DatasetReference"
					},
					"firstRowOnly": false
				}
			},
			{
				"name": "Call Buckets",
				"type": "ForEach",
				"dependsOn": [
					{
						"activity": "Get Bucket Ids",
						"dependencyConditions": [
							"Succeeded"
						]
					}
				],
				"userProperties": [],
				"typeProperties": {
					"items": {
						"value": "@activity('Get Bucket Ids').output.value",
						"type": "Expression"
					},
					"isSequential": false,
					"batchCount": 50,
					"activities": [
						{
							"name": "Call Level 2",
							"type": "ExecutePipeline",
							"dependsOn": [],
							"userProperties": [],
							"typeProperties": {
								"pipeline": {
									"referenceName": "Scale Out Level 2",
									"type": "PipelineReference"
								},
								"waitOnCompletion": true,
								"parameters": {
									"BucketId": {
										"value": "@{item().BucketId}",
										"type": "Expression"
									}
								}
							}
						}
					]
				}
			},
			{
				"name": "Log End",
				"type": "SqlServerStoredProcedure",
				"dependsOn": [
					{
						"activity": "Call Buckets",
						"dependencyConditions": [
							"Succeeded"
						]
					},
					{
						"activity": "Reset And Log Start",
						"dependencyConditions": [
							"Completed"
						]
					}
				],
				"policy": {
					"timeout": "7.00:00:00",
					"retry": 0,
					"retryIntervalInSeconds": 30,
					"secureOutput": false,
					"secureInput": false
				},
				"userProperties": [],
				"typeProperties": {
					"storedProcedureName": "[dbo].[SetBucketLogEntry]",
					"storedProcedureParameters": {
						"LogId": {
							"value": {
								"value": "@activity('Reset And Log Start').output.firstRow.LogId",
								"type": "Expression"
							},
							"type": "Int32"
						}
					}
				},
				"linkedServiceName": {
					"referenceName": "trainingdb01",
					"type": "LinkedServiceReference"
				}
			},
			{
				"name": "Reset And Log Start",
				"type": "Lookup",
				"dependsOn": [],
				"policy": {
					"timeout": "7.00:00:00",
					"retry": 0,
					"retryIntervalInSeconds": 30,
					"secureOutput": false,
					"secureInput": false
				},
				"userProperties": [],
				"typeProperties": {
					"source": {
						"type": "AzureSqlSource",
						"sqlReaderStoredProcedureName": "[dbo].[SetBucketLogEntry]",
						"partitionOption": "None"
					},
					"dataset": {
						"referenceName": "GetSetMetadata",
						"type": "DatasetReference"
					}
				}
			},
			{
				"name": "Reset Bucket Process Map",
				"type": "SqlServerStoredProcedure",
				"dependsOn": [],
				"policy": {
					"timeout": "7.00:00:00",
					"retry": 0,
					"retryIntervalInSeconds": 30,
					"secureOutput": false,
					"secureInput": false
				},
				"userProperties": [],
				"typeProperties": {
					"storedProcedureName": "[dbo].[SetBucketProcesses]"
				},
				"linkedServiceName": {
					"referenceName": "trainingdb01",
					"type": "LinkedServiceReference"
				}
			}
		],
		"folder": {
			"name": "Demo Pipelines/Scaling Out"
		},
		"annotations": [],
		"lastPublishTime": "2020-08-24T13:41:19Z"
	},
	"type": "Microsoft.DataFactory/factories/pipelines"
}