나는 Hadoop을 배우기 시작했고, MapReduce가 약간 혼란 스럽다. 결과가 기본적으로 키 - 값 쌍의 목록 인 작업의 경우 모든 것이 분명해 보입니다. 그러나 결과가 단일 값 (예 : 입력 소수점 제곱의 합 또는 입력 포인트의 질량 중심) 인 작업을 어떻게 해결해야하는지 이해할 수 없습니다.하둡. 결과를 하나의 값으로 줄임
한편으로는 매퍼의 모든 결과를 동일한 키에 넣을 수 있습니다. 그러나이 경우 이해할 수있는 유일한 감속기는 전체 데이터 집합 (합계 또는 평균 좌표 계산)을 관리합니다. 그것은 좋은 해결책처럼 보이지 않습니다.
이미징 할 수있는 또 다른 하나는 매퍼 결과를 그룹화하는 것입니다. 예 : 0-999를 처리 한 매퍼는 0으로 키를 생성하고, 1000-1999는 1과 동일한 키를 생성합니다. 여전히 여러 가지 감속기 결과가있는 한, 감속기 체인을 만드는 것이 필요합니다 (하나의 결과 만 남을 때까지 감속이 반복됩니다). 훨씬 더 계산 효과적이지만 약간 복잡해 보입니다.
Hadoop에는 전체 데이터를 단일 값으로 줄이는 효율을 최대화하기 위해 축소 기의 중첩을 실행하는 기성품 도구가 필요합니다. 내가 찾지 못했지만.
결과가 단일 값인 작업을 해결하는 가장 좋은 방법은 무엇입니까?
답변 해 주셔서 감사합니다. 그러나 두 가지 다른 대답에 접근하는 것이 더 편리하고 효율적이라고 생각됩니다. –