Namenode는 Data를 직접 읽거나 쓰지 않음.
Client는 HDFS의 데이터를 읽거나 쓰기 위해, Namenode에 접속하여 HDFS의 namespace와 저장될 블록 위치를 할당 받음.
   > Namenode에서 namespace와 블록 위치 정보를 받은 Client는 Datanode에 직접 접속하여 데이터를 읽고 쓰는 작업을 진행.
   그러므로 Client에서 HDFS에 데이터를 읽거나 쓰기 위해서 Namenode의 fs.defaultFS (Default : 8020) 포트 뿐만 아니라,
   각 Datanode의 dfs.datanode.address (Default : 50010) 포트에 접근할 수 있어야 함.


# 오류 1

java.nio.channels.UnresolvedAddressException
    at sun.nio.ch.Net.checkAddress(Net.java:123)
    at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:622)
    at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:192)
    at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:530)
    at org.apache.hadoop.hdfs.DFSClient.newConnectedPeer(DFSClient.java:3101)
    at org.apache.hadoop.hdfs.BlockReaderFactory.nextTcpPeer(BlockReaderFactory.java:755)
    at org.apache.hadoop.hdfs.BlockReaderFactory.getRemoteBlockReaderFromTcp(BlockReaderFactory.java:670)
    at org.apache.hadoop.hdfs.BlockReaderFactory.build(BlockReaderFactory.java:337)
    at org.apache.hadoop.hdfs.DFSInputStream.blockSeekTo(DFSInputStream.java:603)
    at org.apache.hadoop.hdfs.DFSInputStream.readWithStrategy(DFSInputStream.java:810)
    at org.apache.hadoop.hdfs.DFSInputStream.read(DFSInputStream.java:857)
    at java.io.DataInputStream.read(DataInputStream.java:100)
    at org.apache.hadoop.io.IOUtils.copyBytes(IOUtils.java:78)
    at org.apache.hadoop.io.IOUtils.copyBytes(IOUtils.java:52)


# 원인
 - 데이터 노드들의 호스트명 또는 IP 주소를 찾지 못해 발생하는 증상
   > 로컬 PC의 hosts 파일에 HDFS 클러스터의 Datanode에 해당하는 호스트명과 IP 주소를 기재


# hosts 파일 내용
# HDFS Cluster
192.168.1.170   hdfs1.hdp
192.168.1.171   hdfs2.hdp
192.168.1.172   hdfs3.hdp
192.168.1.173   hdfs4.hdp



# 오류 2

Exception in thread "main" org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block: BP-815014222-192.168.1.170-1449124153082:blk_1074522057_781248 file=/usr/test/test_file.txt


# 원인
 - 클라이언트에서 블록에 대한 정보를 찾지 못할때 발생
  > Datanode DFS 데이터 전송 포트(Default : 50010) 접속 여부 확인(서비스 포트 Listen 상태, 방화벽)




※ 위 내용은, 여러 자료를 참고하거나 제가 주관적으로 정리한 것입니다.
   잘못된 정보나 보완이 필요한 부분을, 댓글 또는 메일로 보내주시면 많은 도움이 되겠습니다.
06 21, 2016 17:47 06 21, 2016 17:47


Trackback URL : http://develop.sunshiny.co.kr/trackback/1055

Leave a comment


Recent Posts

  1. HDFS - Python Encoding 오류 처리
  2. HP - Vertica ROS Container 관련 오류...
  3. HDFS - Hive 실행시 System Time 오류
  4. HP - Vertica 사용자 쿼리 이력 테이블...
  5. Client에서 HDFS 환경의 데이터 처리시...

Recent Comments

  1. 안녕하세요^^ 배그핵
  2. 안녕하세요^^ 도움이 되셨다니, 저... sunshiny
  3. 정말 큰 도움이 되었습니다.. 감사합... 사랑은
  4. 네, 안녕하세요. 댓글 남겨 주셔서... sunshiny
  5. 감사합니다 많은 도움 되었습니다!ㅎㅎ 프리시퀸스

Recent Trackbacks

  1. Mysql - mysql 설치후 Character set... 멀고 가까움이 다르기 때문 %M

Calendar

«   10 2019   »
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Bookmarks

  1. 위키피디아
  2. MysqlKorea
  3. 오라클 클럽
  4. API - Java
  5. Apache Hadoop API
  6. Apache Software Foundation
  7. HDFS 생태계 솔루션
  8. DNSBL - Spam Database Lookup
  9. Ready System
  10. Solaris Freeware
  11. Linux-Site
  12. 윈디하나의 솔라나라

Site Stats

TOTAL 2724074 HIT
TODAY 540 HIT
YESTERDAY 589 HIT