Apache Pig-실행

이전 장에서 Apache Pig를 설치하는 방법을 설명했습니다. 이 장에서는 Apache Pig를 실행하는 방법에 대해 설명합니다.

Apache Pig 실행 모드

Apache Pig를 두 가지 모드로 실행할 수 있습니다. Local ModeHDFS 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 다음 장에서.