데이터 사이언스
[Hadoop] Pig 소개, 특징, 이해하기
메가구글
2023. 3. 31. 03:16
1. Apache Pig 소개
Apache Pig는 큰 데이터 셋을 분석하는 플랫폼이다.Pig의 대표적인 속성은 구조가 실질적 병렬화에 적합하여 매우 큰 데이터 셋을 처리할 수 있다.
- Hadoop의 ETL 라이브러리다.
- ETL : Extract, transform, load
- MapReduce jobs을 만든다.
- Yahoo에서 만들어졌다.
- Pig Latin 언어를 사용한다.
- Oink, Grunt
2. Pig 특징
- 프로그램의 용이성
- 상호 관련된 여러 데이터 변환으로 구성된 복잡한 작업은 데이터 흐름 시퀀스로 인코딩되므로 쉽게 작성, 이해, 유지 관리할 수 있다.
- 최적화 기회
- 인코딩되는 방식을 통해 시스템은 자동으로 실행을 최적화한다.
- 확장성
- 사용자는 자신의 목적에 따라 자신의 함수를 만들 수 있다.
3. Pig 사용하는경우
ETL과 같은 일, 작업을 하는경우
transform data : 긴 텍스트가 왔을 때 단어를 세는 경우
Clean data : 정확하지 않는 데이터, 중요하지 않는 데이터들을 버린다.
Process data : 굉장히 큰 데이터가 있을 때, Hadoop에 데이터를 넣어두고 Pig로 필터한다.
4. Pig 사용예시
LOAD <file>
FILTER, JOIN, GROUP BY, FOREACH, GENERATE <values>
DUMP <to screen for testing>
STORE <new file>
5. Pig 실행방법
SCRIPT/ Batch mode : Hadoop Shell에서 실행한다. (테스팅 떄 주로 사용)
GRUNT/ Interactive : Pig Shell로 사용 (테스팅 때 주로 사용)
Embedded mode : Java를 사용 (주로 생산 단계에서 사용)
참고(reference)
LinkedIn / Learning Hadoop / Lynn Langit