BLOB 저장소가있는 데이터 팩토리를 사용하고 있습니다.Azure 데이터 팩토리 - BLOB 저장소에 쓸 때 간헐적 인 400 오류가 발생했습니다.
가끔씩 다음 오류가 간헐적으로 발생합니다. 이는 다른 파이프 라인/데이터 소스에서 발생할 수 있습니다. 그러나 어떤 작업이 실패하든 관계없이 항상 동일한 오류가 발생합니다 - 400 지정된 블록 목록이 유효하지 않습니다.
Copy activity encountered a user error at Sink side: ErrorCode=UserErrorBlobUploadFailed,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Error occurred when trying to upload blob ' https://blob.core.windows.net/ ', detailed message: The remote server returned an error: (400) Bad Request.,Source=,''Type=Microsoft.WindowsAzure.Storage.StorageException,Message=The remote server returned an error: (400) Bad Request.,Source=Microsoft.WindowsAzure.Storage,StorageExtendedMessage=The specified block list is invalid. Type=System.Net.WebException,Message=The remote server returned an error: (400) Bad Request.,Source=Microsoft.WindowsAzure.Storage
이것은 스토리지에 데이터를 쓰는 시간에 둘 이상의 작업이 실행되는 경우 가장 일반적인 것 같습니다. 이 프로세스를보다 안정적으로 만들 수있는 방법이 있습니까? 뭔가 잘못 구성되었을 수 있습니까? 데이터 팩토리에서 조각이 실패하게되어서 조사해야 할 부분을 알고 싶습니다.
이 문제에서 겪은 샘플 파이프 라인 :
{
"$schema": "http://datafactories.schema.management.azure.com/schemas/2015-09-01/Microsoft.DataFactory.Pipeline.json",
"name": "Pipeline",
"properties": {
"description": "Pipeline to copy Processed CSV from Data Lake to blob storage",
"activities": [
{
"type": "Copy",
"typeProperties": {
"source": {
"type": "AzureDataLakeStoreSource"
},
"sink": {
"type": "BlobSink",
"writeBatchSize": 0,
"writeBatchTimeout": "00:00:00"
}
},
"inputs": [ { "name": "DataLake" } ],
"outputs": [ { "name": "Blob" } ],
"policy": {
"concurrency": 10,
"executionPriorityOrder": "OldestFirst",
"retry": 0,
"timeout": "01:00:00"
},
"scheduler": {
"frequency": "Hour",
"interval": 1
},
"name": "CopyActivity"
}
],
"start": "2016-02-28",
"end": "2016-02-29",
"isPaused": false,
"pipelineMode": "Scheduled"
}
}
난 단지 LRS 표준 스토리지를 사용하고 있습니다,하지만 난 여전히 간헐적으로 오류가 발생하는 기대하지 않을 것이다.
편집은 : 서비스 JSON
{
"$schema": "http://datafactories.schema.management.azure.com/schemas/2015-09-01/Microsoft.DataFactory.LinkedService.json",
"name": "Ls-Staging-Storage",
"properties": {
"type": "AzureStorage",
"typeProperties": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=;AccountKey="
}
}
}
Blob 출력 JSON을 공유 할 수 있습니까? – yonisha
@yonisha done. 상당히 도움이 될 것 같지 않아요. –
배포 할 서비스의 각 영역은 어느 영역입니까? –