티스토리 뷰

클라우데라의 QuickStartVM에서 피그 스크립트를 실행하는 것을 살펴보기로 한다. 

피그(Pig)와 관련된 내용은 다음 글을 참고하기 바란다. 


하둡(Hadoop) 관련 기술 - 피그, 주키퍼, HBase에 대한 간략한 정리!

Hive & Pig - 하둡(Hadoop)의 맵리듀스를 보다 편하게~


오늘 살펴볼 예제는 VM의 passwd 파일을 HDFS에 업로드하고, 

해당 파일에서 사용자 아이디, 사용자 이름, 그리고 홈디렉토를 가져와서 결과를 저장하는 것이다. 

다음 순서대로 따라해 보자. 


1. /etc/passwd 파일을 HDFS의 /user/cloudera로 업로드한다. 

> hdfs dfs -put /etc/passwd /user/cloudera
> hdfs dfs -ls /user/cloudera/passwd


2. 피그 스크립트를 작성하고 동작 시킬 수 있는 grunt shell을 실행한다. 

> pig -x mapreduce


3. grunt shell에서 passwd 파일을 불러오고 아이디, 사용자 이름, 홈 디렉토리를 가져오는 스크립트를 작성한다. 

passwd 파일의 한 라인이 ':'으로 구분되어 있으므로 using PigStorage(':')로 구분자를 지정했다. 

그리고 foreach문으로 각 라인을 돌면서 첫 번째, 다섯 번째, 여섯 번째의 값을 B에 저장한다. 

마지막으로 B를 덤프해서 원하는 값이 제대로 처리되었는지 확인한다. 

> A = load '/user/cloudera/passwd' using PigStorage(':');
> B = foreach A generate $0, $4, $5;
> dump B;


4. dump 결과는 다음과 같다. 


5. store 명령어를 통해서 결과값을 하둡 파일 시스템으로 저장할 수 있다. 

저장 후 quit 명령어로 grunt shell을 빠져나온다. 

> store B into 'userinfo.out';
> quit


6. userinfo.out 폴더가 생성된 것을 확인하고 결과 값이 제대로 저장되어 있는지 확인한다.  

> hdfs dfs -ls /user/cloudera/userinfo.out
> hdfs dfs -cat /user/cloudera/userinfo.out/part-m-00000


'Cloud&BigData > 하둡(Hadoop)' 카테고리의 다른 글

HBase 예제 살펴보기~  (0) 2016.01.08
Hive 예제 살펴보기~  (0) 2016.01.07
Hadoop 2.0 - HDFS2와 YARN  (0) 2016.01.05
[QuickStartVM] 하둡 word counting 테스트  (0) 2016.01.04
HDFS 간단히 살펴보기~  (0) 2015.12.31
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
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
글 보관함