복붙노트

[HADOOP] 하둡 : 작은 파일 CombineFileInputFormat을 사용 하는가는 성능 향상을 제공합니다?

HADOOP

하둡 : 작은 파일 CombineFileInputFormat을 사용 하는가는 성능 향상을 제공합니다?

나는 하둡 및 로컬 컴퓨터에 대한 몇 가지 테스트를 수행하는 새로운입니다.

많은 작은 파일을 처리하는 많은 솔루션이되고있다. 나는 CombineFileInputFormat를 확장 CombineInputFormat을 사용하고 있습니다.

나는 매퍼의 수는 CombineInputFormat으로 100에서 25로 변경을 참조하십시오. 맵퍼의 수를 감소하기 때문에 나는 또한 어떤 성능 향상을 기대해야 하는가?

내가 CombineInputFormat없이 많은 작은 파일에 대한지도-감소 작업을 수행 한 : 100 매퍼 10 분 걸렸다

지도-감소 작업이 CombineInputFormat으로 실행 된 때 : 25 매퍼 33 분이 걸렸다.

어떤 도움을 이해할 수있을 것이다.

해결법

  1. ==============================

    1.작은 파일의 거대한 숫자에 반대 하둡은 대용량 파일의 수가 적은 더 나은 수행합니다. ( "작은"는 여기에 하둡 분산 파일 시스템 (HDFS) 블록. "숫자"1000 년대에 이르기까지 의미보다 훨씬 작은 의미).

    작은 파일의 거대한 숫자에 반대 하둡은 대용량 파일의 수가 적은 더 나은 수행합니다. ( "작은"는 여기에 하둡 분산 파일 시스템 (HDFS) 블록. "숫자"1000 년대에 이르기까지 의미보다 훨씬 작은 의미).

    1000 1MB의 크기 파일 1000지도 작업을 만듭니다 정상 TextInputFormat에 따라지도-감소 작업이있는 경우 즉이지도의 각 작업은 시작 및 종료 시간의 일정 금액을 필요 의미한다. 작업 생성이 지연 시간은 작업의 성능을 감소시킬 수있다

    자원 제한이있는 멀티 테넌트 클러스터에서지도 슬롯의 큰 숫자를 얻기도 어려울 것이다.

    자세한 내용과 벤치 마크 결과를 위해이 링크를 참조하시기 바랍니다.

  2. from https://stackoverflow.com/questions/36107504/hadoop-does-using-combinefileinputformat-for-small-files-gives-performance-impr by cc-by-sa and MIT license