Jam's story

하둡 사용자 명령어 본문

2021-2학기/하둡

하둡 사용자 명령어

애플쩀 2022. 3. 23. 11:45

achieve

 

하둡 아카이브는 파일 시스템 디렉토리를 위해 로드맵을 그릴 수 있습니다. 하둡 아카이브는 *.har 확장명으로 압축되며 메타데이터와 데이터 파일들을 가지고 있습니다.

/user/hadoop 디렉토리 중 logs 디렉토리를 아카이브하려고 합니다. 압축하려는 명령어 hadoop archive로 /user/neuavenue_arch라는 하둡 파일 시스템 디렉토리 내에 neuavenue.har 파일로 압축은 실행되어질 겁니다. 실행은 MapReduce 잡으로 아카이브 압축을 묶어 파일들을 압축 정리할 수 있습니다.

Hadoop archive -(하이픈) archiveName name -p

:$ cd /home/neuavenue/hadoop

:~/hadoop$ hadoop archive -archiveName neuavenue.har -p /user/hadoop logs /user/neuavenue_archive

하둡 사용자 명령어인 아카이브가 작동이 에러 없이 완료 되었다면 그 압축파일을 타켓 디렉토리로 가서 ls 하둡 fs 쉘 명령어로 확인하도록 하겠습니다. har file format or HTTP Archive format 이는 제이슨 포맷 알카이브 파일 형태로 파일을 불러보고 싶은 경우에 이렇게 har:/// (har 콜론 세 개의 백슬러시를 사용하게 됩니다.

:~/hadoop$ hadoop dfs -lsr har:///user/neuavenue_archive/neuavenue.har

:~/hadoop$ hadoop dfs -ls -R har:///user/neuavenue_archive/neuavenue.har

:~/hadoop$ hdfs dfs -ls /user/neuavenue_archive

.har 명령어로 압축을 하고 -p를 이용해서 특정디렉토리로 복사한다

오류 / 복사가 되었는지 확인

checknative

하둡 공통 명령어 중 checknative 사용자 명령어는 하둡 네이티브 코드 가능성을 체크하는 것으로, 이는 라이브러리 하둡(libhadoop) 이용성 곧 사용할 수 있는 지를 체크하는 명령입니다.

neuavenue@neuavenue:~/hadoop$ hadoop checknative -a

이 명령어는 하둡의 네이티브 라이브러리 체커 (NativeLibraryChecker) 툴로서 하둡의 네이티브 라이브러리들이 정확히 로딩되고 있는지를 체크하는 툴입니다.

네이티브 하둡 라이브러리(Native Hadoop Library)

네이티브 라이브러리는 네이티브 압축 (Native compression) 파일로서 컴파일을 필요로하는 *.so 이라는 파일속성을 가지고 있으며 네이티브 하둡 라이브러리는 libhadoop.so 라는 파일을 참조하고 있습니다. 하둡은 자바 구현들의 무 허용성들을 위하거나 성능 사유(perfermance resons)를 목적으로 가진 컴포넌트들의 네이티브 구현방식을 가지고 있습니다. 컴포넌트들은 세 가지 곧, 압축코드들(Compression Codes), HDFS를 위한 네이티브 IO 유틸리티 (Native IO Utilities for HDFS), CRC32 checksum Implementation 를 가지고 있습니다.

특정타겟 디렉토리로 복사하기, har 파일로 압축 -p 로 특정디렉토리 복사하고자 한다.

json format

네이티브 하둡라이브러리 쓰기위한 체크

실제 라이브러리 파일들 속성

classpath

하둡 jar 파일들과 요구되는 라이브러리들을 화면으로 가져와 프린트하는 사용자 명령어 입니다.

neuavenue@neuavenue:~/hadoop$ hadoop classpath

conftest

하둡의 xml 설정 파일 구성을 검증하기 위한 사용자 명령어 입니다. 검증 방법은 해당 xml 파일을 파싱하고 이중성 검증과 빈 속성 이름들을 체크하여 검증해냅니다.

neuavenue@neuavenue:~/hadoop$ hadoop conftest

Credential

하둡의 시스템 자격 증명(Hadoop Credential)이나 혹은 하둡의 신임장을 취하려면 hadoop credential 유저 명령어를 사용하여 생성함으로 하둡의 스토리지 관리를 토큰과 암호화하여 사용 가능합니다. 다음과 같은 하둡 사용자 명령어를 이용하여 자격 제공자(CredentialProvider)를 만들어 사용하기 위한 알리아스를 담아둡니다. 타인의 정보를 유출시키기 않고 사용되도록 사용자 계정 암호화 하는 작업을 말하며 보안으로 연결시킬 수 있습니다.

neuavenue@neuavenue:~/hadoop$ hadoop credential list -provider jceks://file/tmp/test.jceks

* jceks 는 Java Keystore Provider 자바 키 스토어 제공자이며 그 파일을 사용하여 자격 증명을 취득할 수 있습니다.

-ls 와 -ls -R의 차이

hadoop fs -ls

현재 디렉토리 상황을 펼쳐줍니다. 디스플레이 한다는 의미죠. 하위 디렉토리는 나열하지 않습니다.

hadoop fs -ls -R

현재 디렉토리와 그 디렉토리의 하위 디렉토리까지 모두 함께 디스플레이 하게 됩니다.

Comments