본문 바로가기

Hadoop

[Hadoop] 설치 및 StandAlone 실행

참고 : http://blog.softwaregeeks.org/archives/category/develop/hadoop


하둡을 써보자.

하둡에 대한 책을 읽고 있긴한데 이게 태어난 목적이
분산파일 시스템으로서 더 큰 용량의 파일들을 저장하기 위함인지
그러한 데이터들을 빠르게 분석하기 위함인지 잘 모르겠다.

Standalone 모드에서의 예제가 map reduce가 딱 실행되는걸로 봐서는
후자인 것 같기도하고.. 어쩌면 둘 다겠지.. hadoop이 기본적으로
수정되지 않는 파일만 저장이 된다고 하니 분석에 대한 목적이 더 클지도 모르겠다..

아무튼 더 공부를 해봐야 할 것 같고...

우선 Hadoop 라이브러리를 다운 받는다. (http://hadoop.apache.org/)
나는 0.20 버전을 사용했다.

일단 Mac에서 ...

적당한 디렉토리에 받은 파일을 넣고 압축을 해제한다.

need4spdui-MacBook-Air:Java need4spd$mkdir hadoop
need4spdui-MacBook-Air:Java need4spd$gzip -d hadoop-0.20.203.0rc1.tar.gz
need4spdui-MacBook-Air:Java need4spd$tar -xvf hadoop-0.20.203.0rc1.tar



그러면 이 상태.. 그러니까 풀고 아무것도 안 한 상태가 standalone모드로 실행 할 수 있는
confing상태이다.

 우선 JAVA_HOME을 설정해주자.

HADOOP_HOME에 conf디렉토리를 보면 hadoop-env.sh 파일이 있는데 열어서
JAVA_HOME을 찾아서 설정해준다.

export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home



테스트는.. 아래와 같이.. example jar안에 
이런저런 샘플코드들이 있는 듯 하다. 다만 실행하기 위해서 jar를 풀어서 
META-INF를 제거해줘야 한다. (위 링크한 성주님 블로그 참고)

1. Jar를 풀고 다시 Packaging

need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$cd /Users/need4spd/Java/hadoop/hadoop-0.20.203.0
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$mkdir temp
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$cp hadoop-examples-0.20.203.0.jar ./temp
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$cd temp
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$jar -xvf *.jar
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$rm -rf META-INF
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$rm *.jar
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$jar cvf ../hadoop-examples.jar *



2. Test파일 생성

need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$cd ..
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$vi input.txt

R
R
R
r
r
r
r
r



3. 실행

need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$ cd bin

./hadoop jar ../hadoop-examples.jar org.apache.hadoop.examples.WordCount ../input.txt output



4. 결과조회

need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$cd ouput
need4spdui-MacBook-Air:hadoop-0.20.203.0 need4spd$vi part-r-00000

R 3
r 5



샘플코드를 보니 HFS를 사용하여 여러가지 분석을 할 수 있는 코드도 개발이 가능 할 것 같다

이제 첫 걸음이니... 욕심내지말고 차분히 가봐야지...