Конвейер фабрики данных, использующий действие копирования из хранилища исходных данных -> промежуточное хранилище больших двоичных объектов -> хранилище данных приемника.
Копирование из источника в большой двоичный объект работает должным образом (строки копируются). Не удалось скопировать из промежуточного состояния в приемник - скопировано 0 строк.
Отключение Polybase и использование массовой вставки работают.
{
"name": "PI_TEST",
"properties": {
"activities": [
{
"name": "MaterializedEventIdFilter_Copy",
"type": "Copy",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureInput": false
},
"userProperties": [
{
"name": "Destination",
"value": "[formigration].[MaterializedEventIdFilter]"
}
],
"typeProperties": {
"source": {
"type": "SqlDWSource",
"sqlReaderStoredProcedureName": "[formigration].[proc_GetStgMaterializedEventIdFilter]"
},
"sink": {
"type": "SqlDWSink",
"allowPolyBase": true,
"writeBatchSize": 100000,
"polyBaseSettings": {
"rejectValue": 0,
"rejectType": "value",
"useTypeDefault": false
}
},
"enableStaging": true,
"stagingSettings": {
"linkedServiceName": {
"referenceName": "riskstoreprd",
"type": "LinkedServiceReference"
},
"enableCompression": true
}
},
"inputs": [
{
"referenceName": "ioPrePrdMaterializedEventIdFilter",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "CloudPrdMaterializedEventIdFilter",
"type": "DatasetReference"
}
]
},
{
"name": "MaterialisedEvent",
"type": "SqlServerStoredProcedure",
"dependsOn": [
{
"activity": "MaterializedEventIdFilter_Copy",
"dependencyConditions": [
"Succeeded"
]
}
],
"policy": {
"timeout": "7.00:00:00",
"retry": 2,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureInput": false
},
"userProperties": [],
"typeProperties": {
"storedProcedureName": "[formigration].[proc_SetStgMaterializedEventIdFilter]"
},
"linkedServiceName": {
"referenceName": "cloud_prd",
"type": "LinkedServiceReference"
}
}
],
"annotations": []
},
"type": "Microsoft.DataFactory/factories/pipelines"
}
Я ожидал, что данные из блоба попадут в приемник, но строки не копируются.
Изменить 1: проверил хранилище данных (приемник), установлено соединение, где я могу наблюдать за внешними таблицами и т.д., созданными из хранилища BLOB-объектов, все в течение секунды, но данные не копируются.
INSERT INTO [formigration].[MaterializedEventIdFilter] SELECT * FROM [ADFCopyGeneratedExternalTable_307e2c7f-a56f-4b75-86fb-10ab0cb94548]