[HADOOP] 감속기의 밀폐 방법으로 방출하는 방법
HADOOP감속기의 밀폐 방법으로 방출하는 방법
MapReduceBase에서 상속 된 close 메소드에는 인수가 없습니다.
public void close()
그래서 나는 reduceCollector 메소드를 사용하지 않는다.
void reduce(K2 key, Iterator<V2> values, OutputCollector<K3, V3> output, Reporter reporter)
새로운 hadoop API에서 Reducer 클래스에는 설정 메소드가 있습니다.
void setup(Context context)
컨텍스트 인수는 키와 값을 방출 할 수 있다고 생각합니다. 문제는 이전 API를 사용해야하고 close 메소드에서 방출하는 방법을 알 수 없다는 것입니다. 내가 원하는 것은 마지막 시간 단축 메소드가 호출되고 데이터를 내보낼 때 일부 코드를 실행하는 것입니다.
해결법
-
==============================
1.오래된 API를 사용하는 것은 불행한 일입니다. 새 API에는 정리 메소드가 있습니다 (설정 보완).
오래된 API를 사용하는 것은 불행한 일입니다. 새 API에는 정리 메소드가 있습니다 (설정 보완).
Hadoop이 OutputCollector를 당신의 Reducer 클래스의 개인 데이터 멤버에 속여서 저장할 수 있는지 궁금합니다. 그런 다음 close 메서드에서 참조하십시오. 나는 너를 할 수 없다고 생각하지만, 시도해 볼만한 가치가 있을지도 모른다.
from https://stackoverflow.com/questions/13557007/how-to-emit-in-the-close-method-of-reducer by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 하나의 JVM에서 여러 맵 작업을 실행할 수 있습니까? (0) | 2019.06.28 |
---|---|
[HADOOP] Python Hadoop이 Windows에서 스트리밍 중이며, 유효한 Win32 응용 프로그램이 아닙니다. (0) | 2019.06.28 |
[HADOOP] \ n \ n을 \ n으로 변환하고 ARC 형식을 깨는 hadoop (0) | 2019.06.28 |
[HADOOP] 파티션으로 외부 생성 (0) | 2019.06.28 |
[HADOOP] 다른 돼지 스크립트에서 돼지 라틴어 스크립트 호출 (0) | 2019.06.28 |