ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Hadoop Namespace 알아보기
    Hadoop 2023. 12. 4. 22:58
    728x90
    반응형

    - 목차

     

    소개.

    Namespace 는 네임노드가 메타데이터들을 관리하는 영역입니다.
    메타데이터들이 저장되는 논리적인 단위, 논리적인 저장 영역이라고도 불리는데요.
    파일이 저장되는 실질적인 위치가 아니기 때문입니다.
    hdfs file write 관련된 예시를 들어보겠습니다.

    아래는 “/“ 위치에 test.txt 파일을 생성하는 hdfs 커맨드입니다.
    여기서 “/“ 실질적인 저장 위치가 아닙니다.
    “/“ 는 Root Namespace 라고 불리는 하나의 Namespace 입니다.

    hdfs dfs -put ./test.txt /



    따라서 네임노드의 루트 디렉토리을 확인해도 test.txt  라는 파일은 존재하지 않습니다.
    이러한 방식대로 여러 Namespace 를 구성하여 구조적으로 파일의 메타데이터들을 관리할 수 있습니다.

    Namespace 생성하기.

    Namespace 는 hdfs 에서 파일을 생성하기 위한 필수적인 요소입니다.
    Root Namespace 라는 기본 Namespace 가 존재하긴 하지만, 분류의 목적에 맞게 Namespace 를 생성하여 파일을 분산저장할 수 있습니다.

    아래는 Namespace 를 생성하는 예시입니다.
    Root Namespace 하위에 andy 네임스페이스를 생성하였습니다.

    hdfs dfs -mkdir /andy


    이렇게 /andy 네임스페이스가 생성되면, /andy 네임스페이스 하위에 파일을 생성할 수 있습니다.

    hdfs dfs -put ./test.txt /andy/



     

    Namespace 의 물리적인 위치는 어디일까 ?

    Namespace 는 메타데이터를 관리하는 논리적인 영역이라고 말씀드렸습니다.
    그럼 네임스페이스가 저장되는 물리적인 위치를 어디일까요?
    네임스페이스는 네임노드의 fsimage 에 저장됩니다.
    fsimage 는 현재 분산저장된 파일들의 메타데이터들이 보관되는 영역입니다.
    fsimage 는 snapshot 방식으로 관리가 되구요.
    주기적으로 최신의 데이터 상태를 스냅샷으로 저장합니다.
    그리고 그 스냅샷이 바로 fsimage 이죠.
    fsimage 라는 이름에서 알 수 있듯이 File System 의 image 라고 생각하시면 됩니다.

    fsimage 라는 영역 또는 파일 내부에 Namespace 가 저장됩니다.

     

    반응형

    'Hadoop' 카테고리의 다른 글

    Hadoop DataNode 알아보기  (0) 2023.12.12
    Hadoop fsimage 알아보기  (0) 2023.12.11
    Hadoop Edit Log 알아보기  (0) 2023.12.04
    Hadoop Block 알아보기  (0) 2023.11.27
    [Hadoop] Docker 로 Hadoop Cluster 실행하기 ( docker-compose )  (0) 2021.12.15
Designed by Tistory.