2016-10-19 4 views
-1

하이브 성능을 향상시키기 위해 SSD를 사용하려고합니다. SSD는 고속 임의 액세스가 가능합니다. mapreduce 코드에서 실행될 하이브를 변경하려고 할 때 이점을 얻습니다. 이제 제 생각은 셔플 단계를 단순화하거나 제거하는 것입니다. 가능합니까? 가능한 경우 어디에서 변경합니까?SSD로 하이브의 성능 향상

ps. 임시 파일이 저장되는 하이브가 작동 중일 때 어떤 일이 발생하는지 알려주십시오.

나는 영어를 잘 모른다. 죄송 해요. 감사합니다.

답변

0

이론상으로 당신은 당신 자신의 파티셔너를 쓸 수 있고, 맵퍼가 달린 동일한 노드에서 실행되는 감속기에 데이터를 보낼 수 있습니다. 이렇게하면 출력 파일을 "분리되지 않음"으로 만들 수 없기 때문에 셔플 링을 사용하지 않는 것이 좋습니다.

SSD와 같은 빠른 디스크가 있으면 블록 크기를 늘릴 수 있습니다. 일반적으로 블록 크기는 전체 블록 전송의 1 %보다 큰 탐색 시간을 갖도록 계산됩니다.

이렇게하면 스플릿 수가 적기 때문에 사용되는 맵퍼의 수를 줄일 수 있습니다. 다소, 매퍼가 적다는 것은 덜 매끄러운 것을 의미합니다. 중간 파일에 압축 된 파일 형식을 사용하여 작업 속도를 높입니다.