문제

나는 이것을 올바른 방법으로 묻기를 바랍니다. 나는 Elastic Mapreduce에 대한 길을 배우고 있으며 "스트리밍"작업 흐름에 사용할 수있는 "집계"감속기에 대한 수많은 언급을 보았습니다.

Amazon의 "Amazon Elastic Mapreduce 소개"에서 PDF는 "Amazon Elastic Mapreduce는 Aggregrate라는 기본 축소를 가지고 있습니다"

내가 알고 싶은 것은 다음과 같습니다. 다른 기본 감속기가 사용 가능합니까?

나는 내 자신의 감속기를 쓸 수 있다는 것을 이해하지만, 이미 존재하는 것을 쓰고 "바퀴를 재창조"하고 싶지는 않습니다.

도움이 되었습니까?

해결책

나는 비슷한 상황에 처해 있습니다. Google 결과 등으로부터 대답은 "아니오, 하프에는 다른 기본 감소기가 없다"는 것을 추론합니다. "그래서 당신은 자신의 글을 쓸 필요가 없습니다.

http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/mapred/lib/aggregate/package-summary.html 다수의 유용한 애그리 게이터 용도를 보여 주지만 문서와 Erik Forsberg의 답변에 설명 된 매우 기본적인 키/값 합계 이외의 다른 기능에 액세스하는 방법에 대한 설명서를 찾을 수 없습니다. 아마도이 기능은 내가 사용하고 싶지 않은 Java API에만 노출 될 수 있습니다.

또한 Erik Forsberg의 대답 이이 특정 질문에 대한 좋은 답변이 아니라고 두려워합니다. 유용한 답변이 될 수있는 또 다른 질문은 구성 될 수 있지만 OP가 요구하는 것은 아닙니다.

다른 팁

그들이 참조하는 감속기는 여기에 문서화되어 있습니다.

http://hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapred/lib/aggregate/package-summary.html

그것은 스트리밍 유틸리티에 내장 된 감속기입니다. 특별한 방식으로 포맷 된 출력 키를 작성하는 맵퍼를 작성하여 일반적인 계산을하는 간단한 방법을 제공합니다.

예를 들어, 매퍼가 출력하는 경우 :

LongValueSum:id1\t12
LongValueSum:id1\t13
LongValueSum:id2\t1
UniqValueCount:id3\tval1
UniqValueCount:id3\tval2

감속기는 각 LongValuesum의 합을 계산하고 UniqValueCount의 고유 한 값을 계산합니다. 따라서 감속기 출력은 다음과 같습니다.

id1\t25
id2\t12
id3\t2

이 패키지의 감속기 및 콤바이너는 달리기 스트리밍 믹서 및 감속기에 비해 매우 빠르므로 집계 패키지를 사용하는 것이 편리하고 빠릅니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top