[HADOOP] 어떻게 하이브 버킷에 작품을 해싱?
HADOOP어떻게 하이브 버킷에 작품을 해싱?
그래서 해시는 하이브에 대해 어떻게 작동하는지 우리가 여러 통의 데이터를 버킷 동안 것을 알고 싶어, 자바 HashMap에 대한 해시 주체를 알고있다.
해결법
-
==============================
1.나는 최근 자신이이를 알아 내기 위해 일부 하이브 소스 코드에 파고했다. 여기에 내가 무엇을 발견 :
나는 최근 자신이이를 알아 내기 위해 일부 하이브 소스 코드에 파고했다. 여기에 내가 무엇을 발견 :
정수 필드의 경우, 해시는 정수 값입니다. 문자열의 경우, 자바의 문자열 해시 코드의 유사한 버전을 사용합니다. 여러 값을 해시하면, 해시는 자바의 목록 해시 코드의 유사한 버전입니다.
-
==============================
2.버킷 팅은 향후 분석을 위해 더 분해 된 구조로 분할과 함께 사용됩니다. 더 많은 파티션이 네임 노드 성능에 영향을 미칠 수 있습니다 더 HDFS 파일에 그 결과, 우리는 버킷 팅에 의존. 실제로 작동하는 방식의 버킷 팅은 다음과 같습니다 버킷의 수는 hashFunction에 의해 결정된다 (bucketingColumn) 모드 numOfBuckets numOfBuckets는 파티션으로 테이블을 생성 할 때 선택합니다. 해시 함수의 출력은 칼럼 선택이 끝난의 종류에 따라 달라진다. 정확하게 데이터를 적절히 버킷 동안 감속기의 수를 설정하고 착륙하기 위해, 우리는 "hive.enforce.bucketing = true"를 사용합니다. 자세한 내용은 이쪽을 참조하십시오
버킷 팅은 향후 분석을 위해 더 분해 된 구조로 분할과 함께 사용됩니다. 더 많은 파티션이 네임 노드 성능에 영향을 미칠 수 있습니다 더 HDFS 파일에 그 결과, 우리는 버킷 팅에 의존. 실제로 작동하는 방식의 버킷 팅은 다음과 같습니다 버킷의 수는 hashFunction에 의해 결정된다 (bucketingColumn) 모드 numOfBuckets numOfBuckets는 파티션으로 테이블을 생성 할 때 선택합니다. 해시 함수의 출력은 칼럼 선택이 끝난의 종류에 따라 달라진다. 정확하게 데이터를 적절히 버킷 동안 감속기의 수를 설정하고 착륙하기 위해, 우리는 "hive.enforce.bucketing = true"를 사용합니다. 자세한 내용은 이쪽을 참조하십시오
from https://stackoverflow.com/questions/30594038/how-hashing-works-in-bucketing-for-hive by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] HDFS 나는 가용성을 높이기 위해 파일 당 복제 요소를 지정할 수 있습니다 (0) | 2019.10.18 |
---|---|
[HADOOP] bash는 파일에 매핑 할 수있는 몇 가지 일반적인 HDFS 명령은 무엇입니까? (0) | 2019.10.18 |
[HADOOP] PHP 스크립트를 실행하면 브라우저에서 쉘을 통해 하둡 명령을 실행합니다 (0) | 2019.10.18 |
[HADOOP] 그것은 아브 스키마 파일에 의해 정의 된 외부 테이블의 기존 열의 메타 데이터를 변경할 수 있습니까? (0) | 2019.10.18 |
[HADOOP] 항상 로컬 호스트로 리디렉션 webhdfs : 50075을 (0) | 2019.10.18 |