Apache Pig-실행
이전 장에서 Apache Pig를 설치하는 방법을 설명했습니다. 이 장에서는 Apache Pig를 실행하는 방법에 대해 설명합니다.
Apache Pig 실행 모드
Apache Pig를 두 가지 모드로 실행할 수 있습니다. Local Mode 과 HDFS mode.
로컬 모드
이 모드에서는 모든 파일이 로컬 호스트 및 로컬 파일 시스템에서 설치되고 실행됩니다. Hadoop 또는 HDFS가 필요하지 않습니다. 이 모드는 일반적으로 테스트 목적으로 사용됩니다.
MapReduce 모드
MapReduce 모드는 Apache Pig를 사용하여 HDFS (Hadoop File System)에있는 데이터를로드하거나 처리하는 곳입니다. 이 모드에서는 Pig Latin 문을 실행하여 데이터를 처리 할 때마다 MapReduce 작업이 백엔드에서 호출되어 HDFS에있는 데이터에 대한 특정 작업을 수행합니다.
Apache Pig 실행 메커니즘
Apache Pig 스크립트는 대화 형 모드, 배치 모드 및 임베디드 모드의 세 가지 방법으로 실행할 수 있습니다.
Interactive Mode(Grunt 셸)-Grunt 셸을 사용하여 대화 형 모드에서 Apache Pig를 실행할 수 있습니다. 이 셸에서 Pig Latin 문을 입력하고 출력을 가져올 수 있습니다 (Dump 연산자 사용).
Batch Mode (스크립트)-다음을 사용하여 단일 파일에 Pig Latin 스크립트를 작성하여 배치 모드에서 Apache Pig를 실행할 수 있습니다. .pig 신장.
Embedded Mode (UDF)-Apache Pig는 자체 기능을 정의하는 기능을 제공합니다 (User D정교한 Functions)을 자바와 같은 프로그래밍 언어로 사용하고 스크립트에서 사용합니다.
그런트 셸 호출
다음을 사용하여 원하는 모드 (local / MapReduce)에서 Grunt 셸을 호출 할 수 있습니다. −x 옵션은 아래와 같습니다.
로컬 모드 | MapReduce 모드 |
---|---|
Command − $ ./pig –x 로컬 |
Command − $ ./pig -x 맵리 듀스 |
Output − |
Output − |
이 명령 중 하나는 아래와 같이 Grunt 셸 프롬프트를 제공합니다.
grunt>
다음을 사용하여 Grunt 셸을 종료 할 수 있습니다. ‘ctrl + d’.
Grunt 쉘을 호출 한 후 Pig Latin 문을 직접 입력하여 Pig 스크립트를 실행할 수 있습니다.
grunt> customers = LOAD 'customers.txt' USING PigStorage(',');
배치 모드에서 Apache Pig 실행
파일에 전체 Pig Latin 스크립트를 작성하고 다음을 사용하여 실행할 수 있습니다. –x command. 파일에 Pig 스크립트가 있다고 가정 해 봅시다.sample_script.pig 아래 그림과 같이.
Sample_script.pig
student = LOAD 'hdfs://localhost:9000/pig_data/student.txt' USING
PigStorage(',') as (id:int,name:chararray,city:chararray);
Dump student;
이제 아래와 같이 위 파일에서 스크립트를 실행할 수 있습니다.
로컬 모드 | MapReduce 모드 |
---|---|
$ 돼지 -x 지역 Sample_script.pig | $ 돼지 -x 맵리 듀스 Sample_script.pig |
Note − Pig 스크립트를 실행하는 방법에 대해 자세히 설명합니다. Bach mode 그리고 embedded mode 다음 장에서.