Hadoop 데이터 복제

LinuxBeginner
지금 연습하기

소개

Hadoop 데이터 복제의 세계에 오신 것을 환영합니다! 이번 실습에서는 시간 여행자가 되어 Hadoop HDFS와 데이터 복제 기능의 복잡한 세계를 탐험하게 됩니다. 숙련된 Hadoop 관리자처럼 분산 환경에서 데이터 복제를 효율적으로 수행하여 내결함성(fault tolerance)과 데이터 가용성을 높이는 방법을 배워보세요.

Hadoop 데이터 복제 이해하기

이번 단계에서는 Hadoop의 데이터 복제 개념을 살펴보고, 이것이 분산 데이터의 고가용성과 신뢰성에 어떻게 기여하는지 이해합니다. 먼저 HDFS의 데이터 복제 관련 설정부터 확인해 보겠습니다.

  1. 터미널을 열고 hadoop 사용자로 전환합니다:

    su - hadoop
    
  2. 텍스트 편집기를 사용하여 hdfs-site.xml 파일을 엽니다:

    vim /home/hadoop/hadoop/etc/hadoop/hdfs-site.xml
    

    또는

    nano /home/hadoop/hadoop/etc/hadoop/hdfs-site.xml
    
  3. 복제 계수(replication factor)를 정의하는 매개변수를 찾아 값을 3으로 설정합니다:

    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    
  4. 변경 사항을 저장하고 텍스트 편집기를 종료합니다.

  5. HDFS 설정을 확인하여 복제 계수가 올바르게 설정되었는지 확인합니다:

    hdfs getconf -confKey dfs.replication
    
  6. 변경 사항을 적용하기 위해 HDFS 서비스를 재시작합니다:

    HDFS 서비스 중지:

    /home/hadoop/hadoop/sbin/stop-dfs.sh
    

    HDFS 서비스 시작:

    /home/hadoop/hadoop/sbin/start-dfs.sh
    
  7. 다음 단계로 넘어가기 전에 HDFS가 쓰기 작업을 수락할 준비가 되었는지 확인합니다:

    hdfs dfsadmin -safemode leave
    

    HDFS가 이미 안전 모드(safe mode)에서 해제된 경우, 명령은 안전 모드가 꺼져 있다고 보고합니다.

데이터 복제 테스트

이번 단계에서는 HDFS에 샘플 파일을 생성하고, 데이터 블록의 중복 복사본을 유지하여 내결함성을 달성하는 데이터 복제 프로세스가 어떻게 작동하는지 관찰합니다.

  1. HDFS에 새 파일을 생성합니다:

    echo "Hello, HDFS" | hdfs dfs -put - /user/hadoop/samplefile.txt
    
  2. 파일의 복제 상태를 확인하여 몇 개의 복제본이 생성되었는지 확인합니다:

    hdfs fsck /user/hadoop/samplefile.txt -files -blocks -locations
    
  3. 출력 결과를 바탕으로 파일 상태를 확인합니다:

    ...
    Replicated Blocks:
    Total size:    12 B
    Total files:   1
    Total blocks (validated):      1 (avg. block size 12 B)
    Minimally replicated blocks:   1 (100.0 %)
    Over-replicated blocks:        0 (0.0 %)
    Under-replicated blocks:       1 (100.0 %)
    Mis-replicated blocks:         0 (0.0 %)
    Default replication factor:    3
    Average block replication:     1.0
    Missing blocks:                0
    Corrupt blocks:                0
    Missing replicas:              2 (66.666664 %)
    Blocks queued for replication: 0
    ...
    

요약

이번 실습에서는 HDFS 내의 핵심 개념인 Hadoop 데이터 복제에 대해 깊이 있게 다루었습니다. 복제 계수를 설정하고 실제 복제 프로세스를 관찰함으로써, Hadoop이 분산 환경에서 데이터 내구성과 내결함성을 어떻게 보장하는지 더 깊이 이해하게 되었습니다. 이러한 측면을 탐구하는 것은 Hadoop 기술을 향상시킬 뿐만 아니라, Hadoop을 사용하여 강력한 데이터 인프라를 유지 관리하는 데 필요한 지식을 제공합니다. Hadoop 데이터 복제의 세계를 즐겁게 탐험하시길 바랍니다!