[HADOOP] Reducer 출력에서 쉼표로 구분 된 키를 정렬하는 방법은 무엇입니까?
HADOOPReducer 출력에서 쉼표로 구분 된 키를 정렬하는 방법은 무엇입니까?
MapReduce를 사용하여 RFM 분석 프로그램을 실행하고 있습니다. OutputKeyClass는 Text.class이며 R = BigInteger, F = Binteger, M = BigDecimal 및 Reducer에서 키로 쉼표로 구분 된 R (Recency), F (Frequency), M (Monetory)을 방출합니다. Customer_ID를 나타냅니다. Hadoop은 키를 기준으로 출력을 정렬하지만 최종 결과는 조금 더 위대하다는 것을 알고 있습니다. 출력 키를 먼저 R, F, M으로 정렬하고 싶지만 알 수없는 이유로 다음과 같은 출력 정렬 순서가 나타납니다.
545,1,7652 100000
545,23,390159.402343750 100001
452,13,132586 100002
452,4,32202 100004
452,1,9310 100007
452,1,4057 100018
452,3,18970 100021
그러나 다음과 같은 출력을 원합니다.
545,23,390159.402343750 100001
545,1,7652 100000
452,13,132586 100002
452,4,32202 100004
452,3,18970 100021
452,1,9310 100007
452,1,4057 100018
참고 : customer_ID는 맵 단계의 핵심 요소였으며 특정 Customer_ID에 속하는 모든 RFM 값은 Reducer에서 집계를 위해 함께 제공됩니다.
해결법
-
==============================
1.그래서 많은 검색을 한 후 내가 지금 게시하고있는 유용한 자료를 발견했습니다.
그래서 많은 검색을 한 후 내가 지금 게시하고있는 유용한 자료를 발견했습니다.
내가 인터넷에서 읽은 내용에 대한 개인적인 이해를 바탕 으로이 답변을 코드 또는 설명의 어딘가에서 기술적으로 잘못하고 있다면 완벽하게 작동합니다.
from https://stackoverflow.com/questions/35466163/how-to-sort-comma-separated-keys-in-reducer-ouput by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] piggybank를 빌드 할 수 없습니다-> / home / build / ivy / lib가 없습니다 (0) | 2019.08.11 |
---|---|
[HADOOP] Windows의 Hadoop + HBase 클러스터 : winutils를 찾을 수 없음 (0) | 2019.08.11 |
[HADOOP] 하둡 멀티 노드 클러스터. 데이터 노드가 제대로 작동하지 않습니다 (0) | 2019.08.11 |
[HADOOP] hadoop에서 mapreduce 거리 계산 (0) | 2019.08.11 |
[HADOOP] hsync ()가 hdfs 파일을 플러시하지 않는 이유는 무엇입니까? (0) | 2019.08.10 |