본문으로 바로가기

Azure Blob Storage의 Hierarchical Namespace 설명

category 클라우드/Azure 2025. 4. 17. 15:21

Azure에서 말하는 **Hierarchical Namespace(HNS)**는 주로 Azure Data Lake Storage Gen2에서 사용되는 기능이에요.
한 마디로 말하면:

📂 디렉터리 구조(폴더 구조)를 실제로 지원하는 Blob 스토리지 기능이에요.


🧠 개념 정리

기존 Azure Blob Storage는 사실상 **"평면 구조(Flat namespace)"**입니다.

  • 모든 Blob은 컨테이너 안에 그냥 파일처럼 나열돼요.
  • 디렉터리처럼 보이지만, 사실은 경로 문자열로 구분하는 것뿐이에요.

예: images/photo.jpg 또는 logs/2024/04/10/log.txt

하지만 HNS를 활성화하면:

✅ 실제로 images, logs/2024/04/10 같은 디렉터리를 진짜 폴더처럼 다룰 수 있어요!
그래서 디렉터리 단위로:

  • 권한 설정 (ACLs)
  • 이동, 복사
  • 삭제 등 정교한 제어가 가능해져요.

🧩 HNS를 사용하는 경우

 

스토리지 종류 HNS 지원 여부 설명
Blob Storage (기본) 디렉터리 구조 없음
Data Lake Storage Gen2 HNS 지원 (필수)

즉, HNS는 Data Lake Gen2 기능의 일부로 생각하시면 돼요.


📦 장점 요약

기능 HNS OFF (일반 Blob) HNS ON (Data Lake)
디렉터리 구조 ❌ 없음 (문자열로 구분) ✅ 실제 폴더 구조
디렉터리별 권한 설정 ❌ 불가 ✅ 가능 (POSIX ACL)
대용량 분석 (Spark, Databricks 등) ❌ 제한적 ✅ 최적화됨
Hadoop 호환성 ❌ 없음 ✅ 있음

🛠️ 설정 방법

Blob 스토리지를 만들 때 "Hierarchical namespace 사용"을 켜야 해요.

  • 한 번 켜면 나중에 끌 수 없습니다. (스토리지 계정 생성 시만 가능)

Azure Portal > Storage Account 만들기 > Advanced 탭 >
→ "Enable hierarchical namespace" 체크 ✅


📌 정리하면

항목 설명
이름 Hierarchical Namespace (계층적 네임스페이스)
사용 목적 실제 폴더/디렉터리처럼 데이터 구조 관리
주요 기능 디렉터리 ACL, 이동/삭제, 대용량 분석 호환
적용 대상 Data Lake Storage Gen2 전용
설정 시점 스토리지 계정 생성 시만 가능