빅데이터/하둡

하둡 1.0 튜토리얼 - (6) HDFS 명령어

_금융덕후_ 2019. 7. 12. 21:43
728x90
반응형

 

 

 

 

 

HDFS 명령어 포맷

HDFS 명령어는 기본적으로 다음과같은 포맷으로 사용합니다.

> ./bin/hadoop fs -cmd [args]

우리는 alias를 등록해두었기 때문에 어디서든 hadoop을 ./bin/hadoop과 대체해서 사용하면 됩니다.

HDFS의 명령어들은 기본적으로 Unix/Linux의 명령어들과 비슷합니다.

 

파일 목록 보기

파일을 보는것은 다음과 같이 ls를 사용하면 됩니다.

> hadoop fs -ls

-ls 뒤에 아무 argument도 주지 않으면 hdfs의 홈디렉토리를 출력하게 됩니다.

위의 결과를 보시면 지난번에 넣어주었던 conf폴더와 워드카운트의 결과값으로 나온 wordcount_output파일이 있는것을 볼 수 있습니다.

 

파일 용량 확인

파일의 용량을 보는것은 du명령을 사용하면 됩니다.

> hadoop fs -du conf

위와같이 명령하면 conf 디렉토리 안에 있는 파일들의 용량을 출력하게 됩니다.

파일 내용 보기

파일의 내용은 cat명령을 통해 볼 수 있습니다.

> hadoop fs -cat conf/hadoop-env.sh

위 명령어를 입력하시면 hadoop-env.sh파일의 내용이 출력되는것을 볼 수 있습니다.

 

디렉토리 생성

디렉토리는 mkdir명령을 사용해 만들 수 있습니다.

> hadoop fs -mkdir dummy

위와같이 명령하면 홈디렉토리에 dummy라는 폴더를 만들게 됩니다.

ls 명령을 통해 홈디렉토리를 출력해보면 다음과 같이 확인해볼 수 있습니다.

 

파일 복사

put명령을 사용하면 로컬에 있는 파일을 hdfs로 복사할 수 있습니다.

먼저 dummy.txt파일을 만들고 hdfs안에 있는 dummy폴더에 넣어주도록 하겠습니다.

> vi dummy.txt
> hadoop fs -put dummy.txt dummy/dummy.txt

 

파일의 내용은 다음과 같습니다.

This is a dummy text.

파일을 넣어준 뒤 cat명령으로 파일을 출력해보면 다음과같이 출력하는것을 볼 수 있습니다.

 

get명령을 사용하면 hdfs에 있는 파일을 로컬로 복사해올 수 있습니다.

아까 복사해서 넣어준 파일을 dummy2.txt로 이름을 바꿔 가져오겠습니다.

> hadoop fs -get dummy/dummy.txt dummy2.txt

복사해온 뒤 ls와 cat명령으로 확인해보면 잘 가져온것을 알 수 있습니다.

 

 파일이동

mv명령을 사용하면 hdfs내에서 파일을 이동할 수 있습니다.

dummy폴더를 conf 디렉토리 안으로 이동시켜 보겠습니다.

> hadoop fs -mv dummy conf

폴더가 conf디렉토리로 잘 이동한 것을 볼 수 있습니다.

 

파일삭제

rm 명령은 파일을 삭제시킬 수 있습니다.

먼저 conf/dummy/ 디렉토리로 이동한 dummy.txt파일을 삭제시켜 보겠습니다.

> hadoop fs -rm conf/dummy/dummy.txt

파일을 삭제시킨 뒤 conf/dummy 디렉토리를 ls명령으로 출력해보면 아무것도 출력되지 않는것을 볼 수 있습니다.

 

디렉토리 삭제

rmr명령을 사용해 디렉토리를 삭제할 수 있습니다.

아래 명령을 통해 conf/dummy디렉토리를 삭제시켜 보겠습니다.

> hadoop fs -rmr conf/dummy

디렉토리를 삭제한 뒤 conf 디렉토리를 출력해보면 dummy디렉토리가 사라진것을 확인할 수 있습니다.

기타 명령들

위의 명령들 외에도 다음과 같은 명령들이 있습니다.

  • count - 디렉토리나 파일의 갯수 등의 정보 출력
  • tail - 파일의 끝부분의 1KB에 해당하는 정보를 출력
  • chmod - 파일이나 디렉토리의 권한 변경
  • touchz - 0바이트 크기의 파일 생성
  • stat - 디렉터리의 통계 정보 조회
  • setrep - 복제되는 데이터의 개수 변경
  • expunge - hdfs는 삭제한 파일을 휴지통에 넣게 되는데, 그 휴지통을 비우는 작업

 

참고자료

이 포스팅은 "시작하세요! 하둡 프로그래밍" 책의 예제를 무작정 따라해본 포스팅입니다.

https://wikibook.co.kr/beginning-hadoop-programming-2rev/

728x90
반응형