파이썬으로 Azure로 데이터 업로드 및 다운로드하기

Azure는 Microsoft에서 제공하는 클라우드 플랫폼으로, 데이터 저장 및 관리를 위한 다양한 서비스를 제공합니다. 이번 포스트에서는 파이썬을 사용하여 Azure Blob Storage에 데이터를 업로드하고 다운로드하는 방법을 살펴보겠습니다.

Azure Blob Storage란?

Azure Blob Storage는 대용량의 정리되지 않은 데이터를 저장하는 데 사용되는 서비스입니다. 이는 파일, 이미지, 동영상 등을 저장하고, 액세스 제어와 데이터 보안을 설정하며, 글로벌하게 확장 가능한 저장소입니다.

Azure SDK 설치하기

Azure Blob Storage와 상호 작용하기 위해서는 Azure SDK를 설치해야 합니다. 파이썬에서 Azure SDK를 설치하려면 다음 명령을 사용합니다:

pip install azure-storage-blob

데이터 업로드하기

먼저, Azure Blob Storage에 데이터를 업로드해 보겠습니다. 아래 코드는 파이썬을 사용하여 로컬 파일을 Azure Blob Storage에 업로드하는 예제입니다:

from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

connection_string = "<Azure_Storage_Connection_String>"
container_name = "<Container_Name>"
blob_name = "<Blob_Name>"
local_file_path = "<Local_File_Path>"

blob_service_client = BlobServiceClient.from_connection_string(connection_string)
container_client = blob_service_client.get_container_client(container_name)
blob_client = container_client.get_blob_client(blob_name)

with open(local_file_path, "rb") as data:
    blob_client.upload_blob(data)

위 코드에서 <Azure_Storage_Connection_String>, <Container_Name>, <Blob_Name>, <Local_File_Path>를 실제 값으로 대체해야 합니다. <Azure_Storage_Connection_String>은 Azure Blob Storage에 연결하기 위한 연결 문자열입니다. <Container_Name>은 데이터를 업로드할 컨테이너 이름을 나타냅니다. <Blob_Name>은 업로드할 Blob의 이름이며, <Local_File_Path>은 로컬 파일의 경로입니다.

데이터 다운로드하기

이제 업로드한 데이터를 다운로드하는 방법을 알아보겠습니다. 아래 코드는 Azure Blob Storage에서 로컬 파일로 데이터를 다운로드하는 예제입니다:

from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

connection_string = "<Azure_Storage_Connection_String>"
container_name = "<Container_Name>"
blob_name = "<Blob_Name>"
local_file_path = "<Local_File_Path>"

blob_service_client = BlobServiceClient.from_connection_string(connection_string)
container_client = blob_service_client.get_container_client(container_name)
blob_client = container_client.get_blob_client(blob_name)

with open(local_file_path, "wb") as data:
    data.write(blob_client.download_blob().readall())

위 코드에서도 마찬가지로 <Azure_Storage_Connection_String>, <Container_Name>, <Blob_Name>, <Local_File_Path>를 실제 값으로 대체해야 합니다.

마무리

이번 포스트에서는 파이썬을 사용하여 Azure Blob Storage에 데이터를 업로드하고 다운로드하는 방법을 알아보았습니다. Azure Blob Storage는 데이터 저장 및 관리를 위한 효율적이고 확장 가능한 솔루션으로, 빠르고 안정적인 데이터 전송을 제공합니다.

더 자세한 내용은 Azure Blob Storage의 공식 문서를 참조하시기 바랍니다.