[HADOOP] 다른 돼지 스크립트에서 돼지 라틴어 스크립트 호출
HADOOP다른 돼지 스크립트에서 돼지 라틴어 스크립트 호출
PIG 라틴어에 대한 질문이 있습니다. 다른 돼지 스크립트에서 돼지 스크립트를 호출하는 방법이 있습니까?
사용자 정의 함수 (UDF)를 실행하는 것이 가능하다는 것을 알고 있습니다.
REGISTER myudfs.jar;
A = LOAD 'student_data' AS (name: chararray, age: int, gpa: float);
B = FOREACH A GENERATE myudfs.UPPER(name);
DUMP B;
그러나 돼지 스크립트에서는 작동하지 않습니다. 우리는 몇 가지 다른 고객 매개 변수를 세고 있으며 가독성과 재사용을 위해 돼지 발췌 문장을로드하는 것이 좋습니다.
REGISTER somepigscript.pig;
LOAD somepigscript.pig;
이런 기능이 있는지 아십니까? 아니면 어떤 UDF?
고마워, 좋은 하루 되세요.
해결법
-
==============================
1.Pig에는 RUN과 EXEC라는 두 개의 명령이 있습니다. RUN은 Pig 스크립트를 실행하고 후속 사용을 위해 별칭과 속성을 사용할 수있는 반면 EXEC는 스크립트를 실행하고 호출 환경을 변경하지 않고 반환합니다 (그러나 HDFS에서 생성 된 모든 새 파일 사용 가능)는 다릅니다.
Pig에는 RUN과 EXEC라는 두 개의 명령이 있습니다. RUN은 Pig 스크립트를 실행하고 후속 사용을 위해 별칭과 속성을 사용할 수있는 반면 EXEC는 스크립트를 실행하고 호출 환경을 변경하지 않고 반환합니다 (그러나 HDFS에서 생성 된 모든 새 파일 사용 가능)는 다릅니다.
예를 들어 필자가 작성한 모든 스크립트의 시작 부분에 설정할 매크로, 병 및 속성 모음이 있습니다. 매번 타이핑하기보다는 Pig 스크립트에 넣고 스크립트 시작 부분에 RUN /my/script.pig를 호출하십시오.
-
==============================
2.다음과 같은 경우 매크로를 사용할 수 있습니다. http://pig.apache.org/docs/r0.11.1/cont.html#macros
다음과 같은 경우 매크로를 사용할 수 있습니다. http://pig.apache.org/docs/r0.11.1/cont.html#macros
from https://stackoverflow.com/questions/20636007/invoke-pig-latin-script-from-other-pig-script by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] \ n \ n을 \ n으로 변환하고 ARC 형식을 깨는 hadoop (0) | 2019.06.28 |
---|---|
[HADOOP] 파티션으로 외부 생성 (0) | 2019.06.28 |
[HADOOP] Spark에서 여러 줄 요소를 읽는 방법? (0) | 2019.06.28 |
[HADOOP] Hadoop UI에는 하나의 데이터 노드 만 표시됩니다. (0) | 2019.06.28 |
[HADOOP] 하이브 테이블에 키 값 쌍을로드하는 방법은 무엇입니까? (0) | 2019.06.28 |