개요
2024.12.30-[Azure] Storage 서비스에서 Azure에서 제공하는 스토리지 서비스의 여러 종류에 대해서 알아보았다. 이번 글에서는 그중 개체 스토리지에 해당하는 Blob Storage에 대해서 알아보려고 한다.
Azure Blob Storage
Azure Blob Storage는 클라우드 개체 스토리지로, 텍스트나 이진 데이터 같은 대량의 비정형 데이터를 저장하는데 최적화되어 있다. 또한 분산 접근용 파일 저장, 비디오 및 오디오 스트리밍, 로그 파일 쓰기, 백업/보관용 데이터 저장, 브라우저에 이미지 또는 문서 직접 제공 등의 처리를 위해 설계되었다.
사용자는 HTTP/HTTPS를 사용해 Blob Storage에서 접근할 수 있고, 개발자는 Java, Python, Go와 같은 프로그래밍 언어로 제공되는 클라이언트 라이브러리를 사용하여 접근할 수 있다.
리소스
Blob Storage는 다음과 같은 세 가지 종류의 리소스를 제공한다.
스토리지 계정 (Storage Account)
Azure에 데이터에 대한 고유 네임스페이스를 제공한다. 스토리지 계정 이름과 Blob Storage 엔드포인트의 조합은 스토리지 계정에 있는 개체의 기본 주소를 구성한다. 예로 들어, 스토리시 계정의 이름이 mystorageaccount인 경우, Blob Storage의 기본 엔드포인트는 다음과 같게 된다.
http://mystorageaccount.blob.core.windows.net
즉, Azure Storage에 저장한 모든 개체는 고유 계정 이름을 포함하는 주소를 가진다.
스토리지 계정은 사용 시나리오에 맞게 선택할 수 있도록 여러 유형을 제공하고 있다. 일반적인 파일 공유, 큐 및 테이블 등의 데이터를 다룰 때는 Standard 계층에 해당하는 범용 v2 유형을 사용하면 된다.
컨테이너 (Container)
파일 시스템의 디렉터리에 비유할 수 있는 BLOB 세트를 구성한다. 스토리지 계정 당 컨테이너 수, 그리고 컨테이너 당 Blob의 수에는 제한이 없다.
컨테이너의 이름 역시 컨테이너 또는 blob의 주소를 지정하는 데 사용하는 URI의 일부를 구성한다. 컨테이너의 URI는 다음과 같다.
https://myaccount.blob.core.windows.net/mycontainer
이런 이유로 컨테이너의 이름을 지정할 때는 아래의 규칙을 충족하여야 한다.
- 3 ~ 63자까지 가능하다.
- 문자 또는 숫자로 시작하며, 소문자, 숫자, - 문자를 포함한다.
- 두 개 이상의 연속 - 문자를 허용하지 않는다.
Blob
Blob Storage에 실제로 저장되는 데이터를 말하는 것 같다. Blob에는 다음과 같은 세 가지 유형이 있다.
유형 | 설명 |
Block Blob | 텍스트와 바이너리 데이터 저장. 개별적으로 관리할 수 있는 데이터 블록으로 구성된다. |
Append Blob | 블록으로 구성되지만 추가 작업에 최적화되어 있어 가상 머신의 데이터 로깅 등에 적합하다. |
Page Blob | 임의 접근 파일 저장. VHD(가상 하드 드라이브) 파일을 저장하고, Azure 가상 머신의 디스크로 사용된다. |
참고로 Blob의 URI는 다음과 같다.
https://myaccount.blob.core.windows.net/mycontainer/myblob
참고 문서
https://learn.microsoft.com/ko-kr/azure/storage/blobs/storage-blobs-introduction