반응형
AzureBob 업로드 오류: 지정한 BLOB가 이미 있습니다.
저는 매일 Azure 컨테이너에 파일을 업로드하려고 합니다.
오류가 발생했습니다:"동일한 파일로 파일을 업로드할 때 지정한 Blob이 이미 있습니다."(파일을 덮어쓰려고 합니다)
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
conn_str = yml['AZURE_BLOB']['CONN_STR']
container_name = yml['AZURE_BLOB']['CONTAINER_NAME']
# Create the BlobServiceClient that is used to call the Blob service for the storage account
blob_service_client = BlobServiceClient.from_connection_string(conn_str=conn_str)
# Create a blob client using the local file name as the name for the blob
blob_client = blob_service_client.get_blob_client(container=container_name, blob=destination_file_name)
# Upload the created file
data = fs.open(source_path,mode='rb').read()
blob_client.upload_blob(data)
print(destination_file_name+'\t......[DONE]')
오류 메시지:
azure.core.exceptions.ResourceExistsError: The specified blob already exists.
RequestId:13d062cd-801e-00a4-77c7-a81c56000000
Time:2019-12-02T04:18:06.0826908Z
ErrorCode:BlobAlreadyExists
Error:None
Blob 스토리지 클라이언트 라이브러리 v12를 사용하여 기존 BLOB를 덮어쓰려면 overwrite=만 추가하면 됩니다.에 참입니다.upload_blob
방법.
다음은 샘플 코드입니다.
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient
conn_str = "xxx"
container_name = "test6"
blob_service_client = BlobServiceClient.from_connection_string(conn_str=conn_str)
blob_client = blob_service_client.get_blob_client(container=container_name,blob="a1.txt")
with open("F:\\temp\\a1.txt","rb") as data:
blob_client.upload_blob(data,overwrite=True)
print("**completed**")
코드를 실행한 후, 새로운 블롭이 업로드되고 기존 블롭을 덮어쓸 수 있습니다.아래 스크린샷:
이는 개발 스토리지와 관련된 알려진 문제입니다.이 문제는 블록을 업로드하기 위해 시작된 스레드가 여러 개 있을 때 발생합니다(블롭을 구성함).기본적으로 개발 스토리지는 SQL 서버를 데이터 저장소로 사용합니다.이제 첫 번째로 하는 일은 표에 블롭 정보를 저장하는 항목을 만드는 것입니다.여러 개의 스레드가 작동하는 경우 모든 스레드가 동일한 작업을 수행하려고 시도합니다.첫 번째 스레드가 성공하면 후속 스레드에서 이 예외가 발생합니다.
언급URL : https://stackoverflow.com/questions/59132689/azureblob-upload-errorthe-specified-blob-already-exists
반응형
'programing' 카테고리의 다른 글
Ruby %r{} 식 (0) | 2023.06.02 |
---|---|
소수점 이하 두 자리까지 소수점 이하 값을 표시하려면 어떻게 해야 합니까? (0) | 2023.06.02 |
해결 방법: "현재 중단점이 적용되지 않습니다.이 문서에 대한 기호가 로드되지 않았습니다." 경고? (0) | 2023.05.28 |
C#에서 열거를 목록으로 변환하려면 어떻게 해야 합니까? (0) | 2023.05.28 |
SQL Server 2008이 새로 생성된 사용자로 로그인할 수 없음 (0) | 2023.05.28 |