Adding dataflow: MappingOrderAggregation Adding dataset: LakeFileOrderHeaderParquet Adding dataset: LakeFileOrderDetailLinesParquet Adding dataset: TableOrderSummary Adding linkedService: traininglake01noneKV Adding linkedService: trainingdb01 Adding linkedService: TrainingKeys01 Adding dataflow: WranglingOrderAggregation Adding dataset: GetSetMetadata Adding dataset: AnyDatabaseTable Adding linkedService: AnyDatabaseConnection Adding dataset: LaptopFolders Adding linkedService: LaptopFiles Adding integrationRuntime: PaulsLaptopIR Adding dataset: LaptopFilePersonCSV Adding dataset: LakeFiles Adding linkedService: traininglake01 Adding dataset: LaptopsFiles Adding dataset: LakeFilePersonCSV Adding dataset: LakeFileParquet Adding integrationRuntime: ForDataFlowDemos Adding integrationRuntime: VNetEnabledIR Adding managedVirtualNetwork: default Adding linkedService: traininglak01 Adding linkedService: TrainingKeys01withUMI Adding linkedService: TrainingStore01 Adding linkedService: BatchForTraining01 Adding pipeline: Scale Out Level 2 Adding pipeline: Scale Out Level 1 Adding pipeline: Lazy Replication Adding pipeline: 03 - Upload - From Discovery Adding pipeline: 01 - Upload - Simple Adding pipeline: 04 - Upload - From Metadata Adding pipeline: Order Summary with Mapping Adding pipeline: 02 - Upload - Copy Params Adding pipeline: 1950 Activities Adding pipeline: Custom Activity Adding managedPrivateEndpoint: AzureKeyVault1 Adding factory: TrainingFactoryDev
163 lines
4.1 KiB
JSON
163 lines
4.1 KiB
JSON
{
|
|
"name": "Lazy Replication",
|
|
"properties": {
|
|
"activities": [
|
|
{
|
|
"name": "Get Table List",
|
|
"type": "Lookup",
|
|
"dependsOn": [],
|
|
"policy": {
|
|
"timeout": "7.00:00:00",
|
|
"retry": 0,
|
|
"retryIntervalInSeconds": 30,
|
|
"secureOutput": false,
|
|
"secureInput": false
|
|
},
|
|
"userProperties": [],
|
|
"typeProperties": {
|
|
"source": {
|
|
"type": "AzureSqlSource",
|
|
"sqlReaderQuery": {
|
|
"value": "@pipeline().parameters.TableLookupQuery",
|
|
"type": "Expression"
|
|
},
|
|
"queryTimeout": "02:00:00",
|
|
"partitionOption": "None"
|
|
},
|
|
"dataset": {
|
|
"referenceName": "AnyDatabaseTable",
|
|
"type": "DatasetReference",
|
|
"parameters": {
|
|
"LinkedServiceConnectionSecret": {
|
|
"value": "@pipeline().parameters.SourceConnectionSecret",
|
|
"type": "Expression"
|
|
},
|
|
"SchemaName": "sys",
|
|
"TableName": "objects"
|
|
}
|
|
},
|
|
"firstRowOnly": false
|
|
}
|
|
},
|
|
{
|
|
"name": "Copy Tables",
|
|
"type": "ForEach",
|
|
"dependsOn": [
|
|
{
|
|
"activity": "Get Table List",
|
|
"dependencyConditions": [
|
|
"Succeeded"
|
|
]
|
|
}
|
|
],
|
|
"userProperties": [],
|
|
"typeProperties": {
|
|
"items": {
|
|
"value": "@activity('Get Table List').output.value",
|
|
"type": "Expression"
|
|
},
|
|
"activities": [
|
|
{
|
|
"name": "Copy Table",
|
|
"type": "Copy",
|
|
"dependsOn": [],
|
|
"policy": {
|
|
"timeout": "7.00:00:00",
|
|
"retry": 0,
|
|
"retryIntervalInSeconds": 30,
|
|
"secureOutput": false,
|
|
"secureInput": false
|
|
},
|
|
"userProperties": [],
|
|
"typeProperties": {
|
|
"source": {
|
|
"type": "AzureSqlSource",
|
|
"queryTimeout": "02:00:00",
|
|
"partitionOption": "None"
|
|
},
|
|
"sink": {
|
|
"type": "AzureSqlSink",
|
|
"preCopyScript": {
|
|
"value": "IF OBJECT_ID('@{item().SchemaName}.@{item().TableName}') IS NOT NULL TRUNCATE TABLE @{item().SchemaName}.@{item().TableName}",
|
|
"type": "Expression"
|
|
},
|
|
"tableOption": "autoCreate",
|
|
"disableMetricsCollection": false
|
|
},
|
|
"enableStaging": false,
|
|
"translator": {
|
|
"type": "TabularTranslator",
|
|
"typeConversion": true,
|
|
"typeConversionSettings": {
|
|
"allowDataTruncation": true,
|
|
"treatBooleanAsNumber": false
|
|
}
|
|
}
|
|
},
|
|
"inputs": [
|
|
{
|
|
"referenceName": "AnyDatabaseTable",
|
|
"type": "DatasetReference",
|
|
"parameters": {
|
|
"LinkedServiceConnectionSecret": {
|
|
"value": "@pipeline().parameters.SourceConnectionSecret",
|
|
"type": "Expression"
|
|
},
|
|
"SchemaName": {
|
|
"value": "@item().SchemaName",
|
|
"type": "Expression"
|
|
},
|
|
"TableName": {
|
|
"value": "@item().TableName",
|
|
"type": "Expression"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"outputs": [
|
|
{
|
|
"referenceName": "AnyDatabaseTable",
|
|
"type": "DatasetReference",
|
|
"parameters": {
|
|
"LinkedServiceConnectionSecret": {
|
|
"value": "@pipeline().parameters.TargetConnectionSecret",
|
|
"type": "Expression"
|
|
},
|
|
"SchemaName": {
|
|
"value": "@item().SchemaName",
|
|
"type": "Expression"
|
|
},
|
|
"TableName": {
|
|
"value": "@item().TableName",
|
|
"type": "Expression"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"parameters": {
|
|
"SourceConnectionSecret": {
|
|
"type": "string",
|
|
"defaultValue": "ConnectionString-trainingdb01"
|
|
},
|
|
"TargetConnectionSecret": {
|
|
"type": "string",
|
|
"defaultValue": "ConnectionString-trainingdb02"
|
|
},
|
|
"TableLookupQuery": {
|
|
"type": "string",
|
|
"defaultValue": "SELECT \ts.name AS SchemaName, \to.name AS TableName FROM \tsys.objects o \tINNER JOIN sys.schemas s \t\tON o.schema_id = s.schema_id WHERE \to.[type] = 'U'"
|
|
}
|
|
},
|
|
"folder": {
|
|
"name": "Demo Pipelines/Dynamic Linked Services"
|
|
},
|
|
"annotations": [],
|
|
"lastPublishTime": "2020-08-27T09:43:42Z"
|
|
},
|
|
"type": "Microsoft.DataFactory/factories/pipelines"
|
|
} |