2012-08-29 3 views
0

문자열에서 정수로 매핑해야합니다. UDF 함수를 수행하고이 문자열을 전달하는 것으로 생각했습니다. 이 작업을하려면 단일 매퍼가 있어야합니다.하이브에서 매퍼의 최대 수를 설정합니다.

어떻게 맵퍼를 1로 차단합니까? 도움을

덕분에

+0

문제를 더 자세히 설명해 주시겠습니까? 나는 감속기의 수가 제한 될 필요가있는 경우가 많았지 만, 왜 매퍼의 수를 신경 쓰는지는 모르겠다. – Olaf

답변

0

나는 당신이해야 할 노력하고 있지만 문자열에-ID 테이블이 메모리에 상주해야 할 것입니다 때문에 UDF 기반의 접근 방식은 매우 잘 확장되지 않습니다 이해 . 매퍼에서 단일 감속기로 문자열을 전달하기 위해 map-reduce 작업을 사용하면 더 쉬울 수 있습니다. reducer 인스턴스는 전달 된 모든 문자열을 reduce 메서드 (모든 동일한 문자열)와 카운터의 다음 정수 값에 연결하는 데 사용하는 증분 카운터를 유지합니다.

아마도 다른 사람이 입력 형식을 단일 분할을 생성하는 방법 (단일 매퍼를 얻는 방법)으로 제한하는 방법을 알고있을 것입니다.