2017-05-23 8 views
2

300GB 파일을 Azure BLOB 저장소에 업로드하려고합니다.Azure에 블록 BLOB를 업로드 할 때 "요청 본문이 너무 크고 최대 허용 한도를 초과합니다"

// content = array of bytes ~ 300 GB 
using (var stream = new MemoryStream(content)) 
{ 
     var blobRequestOptions = new BlobRequestOptions 
     { 
      ParallelOperationThreadCount = Microsoft.WindowsAzure.Storage.Shared.Protocol.Constants.MaxParallelOperationThreadCount 
     }; 
     blob.UploadFromStream(stream, options: blobRequestOptions); 
} 
이 작업은 다음과 같은 메시지가 오류로 실패

: 나는 (코멘트 당 이전의 SDK 버전을 확인하는) 문제를 생각

The request body is too large and exceeds the maximum permissible limit

+1

[여기에 중복] (https://stackoverflow.com/questions/23567724/ruby-azure-blob-storage-requestbodytoolarge)는 루비에 관한 것이지만 해결책은 동일합니다. Azure가 지원하지 않기 때문에 청크 만들기 큰 얼룩들 ... –

+0

나는 적어도 5 개의 다른 대답을 만났고 그들 중 누구도 나를 위해 일하지 않았다. 나는 이것을 한 번 시도해 볼 것이다. –

+1

@PatrickHofman - 그 정보는 더 이상 사실이 아닙니다 : 블록 얼룩은 최대 4.77TB를 지원합니다. –

답변

1

클라이언트 SDK 버전 번호는 아래 내가 사용하고있는 코드는 . v8.0부터는 200GB -> 4.77TB 크기의 블록 BLOB 크기가 지원됩니다 (블록은 최대 100MB, 이전 4MB 제한과 비교하여 최대 100MB). 50,000 블록 제한이 여전히 적용됩니다 (따라서 100MB x 50,000 블록은 4.77TB 크기를 제공합니다).

이전 SDK 버전은 4MB 블록 및 200GB 블록 BLOB 크기 제한으로 제한되었습니다.

자세한 정보 here.