에 의해 배포되는 이 하이브에 실제로 어떤 영향을 미치는지에 대해 설명하거나 제공 해주시겠습니까? 어떻게 파일을 특정 감속기로 보내도록 제어 할 수 있습니까 ??하이브의 분산 절
2
A
답변
14
DISTRIBUTE BY는지도 출력을 축소 기에서 나누는 방법을 제어합니다. 기본적으로 MapReduce는 매퍼가 출력하는 키에 해시를 계산하고 해시 값을 사용하여 사용 가능한 축소 자간에 키 - 값 쌍을 균등하게 분배하려고 시도합니다. 열의 각 값에 대한 데이터를 함께 캡처하려고한다고 가정 해보십시오. 우리는 DISTRIBUTE BY를 사용하여 각각에 대한 레코드가 동일한 감속기로 이동하도록 할 수 있습니다. DISTRIBUTE BY는 감속기가 처리를 위해 행을 수신하는 방법을 제어한다는 점에서 GROUP BY와 유사하게 작동합니다. Hive는 DISTRIBUTE BY 절이 SORT BY 절 앞에 오면 동일한 쿼리에 포함되도록 요구합니다.
0
공식 문서 here을 사용할 수 있습니다.
3
DISTRIBUTE BY은 메모리 집약적 인 작업을 할 때 메모리를 덜 사용하고 Hadoop이 Map-only 작업 대신 Reducer를 사용하도록하는 좋은 방법입니다. 기본적으로 Mappers는 DISTRIBUTE BY 열을 기반으로 행을 그룹화합니다. 이로 인해 프레임 워크가 전체적으로 작업량을 줄이고이 집계를 Reducers에 전달합니다.
배포자를 사용하지 않고 집계를 수행하는 경우 https://cwiki.apache.org/confluence/display/Hive/Tutorial#Tutorial-Dynamic-PartitionInsert
관련 문제
- 1. 하이브의 하위 쿼리
- 2. 하이브의 LeaseExpiredException
- 3. 하이브의 배열 배열
- 4. 하이브의 문자열 변환
- 5. 하이브의 배열 리터럴
- 6. 하이브의 피벗 테이블
- 7. 하이브의 오프셋 기능
- 8. 하이브의 영숫자 데이터 유형
- 9. 하이브의 날짜 유형 변환
- 10. SSD로 하이브의 성능 향상
- 11. 하이브의 NULL 값 처리
- 12. 하이브의 순위 재설정
- 13. 하이브의 고유 한 열
- 14. 하이브의 스키마 정규화
- 15. 하이브의 재귀 쿼리
- 16. 하이브의 범위 파티셔닝
- 17. 변환 할 하이브의 문자열
- 18. 하이브의 불평등 조인
- 19. 하이브의 인덱스와 파티션
- 20. 하이브의 텍스트 비교
- 21. 하이브의 필드 정렬
- 22. 하이브의 통계 모드 계산
- 23. 하이브의 문에서 업데이트
- 24. ARRAY_CONTAINS 하이브의 다중 값
- 25. 하이브의 업데이트 문
- 26. 레지스트리와 레지스트리 하이브의 차이점
- 27. 하이브의 가입 순서
- 28. 하이브의 열에 프로젝트 배열
- 29. 하이브의 주별 계산
- 30. 하이브의 누적 고유 카운트
을 참조하십시오. MAP-REDUCE는 여전히 모든 그룹 별 열이 동일한 감속기로가는 지 확인한 다음 '배포 기준'을 사용하는 이유는 무엇입니까? – zinking