복붙노트

[HADOOP] Hadoop 0.21.0에서 열린 파일 디스크립터의 예상 소비

HADOOP

Hadoop 0.21.0에서 열린 파일 디스크립터의 예상 소비

하둡 0.21.0을 감안할 때 프레임 워크는 각 개별 맵에 상대적인 열린 파일 디스크립터 수와 관련하여 어떤 가정을하고 작동을 줄입니까? 특히 어떤 하위 작업으로 인해 작업 실행 또는 디스크 유출로 인해 Hadoop이 새 파일 디스크립터를 열 수 있습니까?

(이것은 시스템에서 제공하는 보증을 매우 명확하게 조이기 때문에 다중 출력 사용을 의도적으로 무시합니다.)

Hadoop을 위해 작성한 각 작업이 각 매퍼 또는 리듀서에 대해 필요한 수의 파일 설명자를 유한하게 보장하고 싶습니다. Hadoop은 서버 관리 중에 다른 신발을 떨어 뜨리지 않는 경우 일반적으로 A Good Thing이 될 프로그래머로부터 이것을 유쾌하게 추상화합니다.

원래 클러스터 관리 측면에서 서버 결함에 대해이 질문을했습니다. 프로그래밍도 담당하고 있기 때문에이 질문도 여기에 해당됩니다.

해결법

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

    1.다음은 문제에 대한 통찰력을 제공하는 게시물입니다.

    다음은 문제에 대한 통찰력을 제공하는 게시물입니다.

    이는 정상적인 동작의 경우 매퍼의 수가 열린 파일 디스크립터의 수와 정확히 동일 함을 의미합니다. MultipleOutputs는 매퍼 수에 사용 가능한 파티션 수를 곱하여이 수를 왜곡시킵니다. 그런 다음 감속기는 정상으로 진행하여 감속 작업 당 하나의 파일 (따라서 하나의 파일 설명자)을 생성합니다.

    문제는 유출 작업 중에 출력이 분할에 의해 격렬하게 격렬 해짐에 따라 각 맵퍼에 의해 열려있는 대부분의 파일입니다. 따라서 사용 가능한 파일 디스크립터 문제점이 있습니다.

    따라서 현재 추정되는 최대 파일 디스크립터 한계는 다음과 같아야합니다.

    그리고 그것은 우리가 말한 바와 같습니다.

  2. from https://stackoverflow.com/questions/4357034/expected-consumption-of-open-file-descriptors-in-hadoop-0-21-0 by cc-by-sa and MIT license