2014-02-24 1 views
2

저는 Hadoop의 TotalOrderPartioner를보고 있는데, 어떻게 partioning 파일을 만들었는지와 방법을 이해할 수 없었습니다.hadoop의 파티션 파일은 어떻게 생성됩니까

나의 이해는 지금까지

InputSampler.Sampler 샘플러 = 새로운 InputSampler.RandomSampler (0.1,10000)이다; InputSampler.writePartitionFile (작업, 샘플러);

적절한 입력 및 출력 경로로 작업 개체를 구성하고 독립 실행 형 프로그램을 사용하여 실행하면 출력 경로에 파티션 파일을 만들어야합니다.

이 파티션 파일을 만드는이 처리는 클라이언트 컴퓨터에서 발생하므로이 파일을 만드는 데 사용 된 샘플과 분할은 다양한 데이터 노드에서 클라이언트 컴퓨터로 스트리밍 된 다음 정렬되어 파티션 된 파일이됩니다. 만들어진.

이 작업이 완료되면, 내가이 분할 파일을 생성하는 데 사용되는 것과 유사한 입력 소스를 사용하여 다양한 작업에 대한 TotalOrderPartitioner에 입력이 분할 파일을 사용할 수 있습니다

수있는 사람하시기 바랍니다 내 이해를 확인해?

답변

0

mapReduce 작업을 구현할 때 최소한 Mapper, Reducer 및 작업을 구성하고 실행하는 클래스가 있어야합니다. 이 마지막 클래스에서 분할 파일 (즉, 파티션 파일)을 만드는 코드를 넣습니다.

이 클래스의 논리 :

  • 파티션의 파일을 생성하고 마지막으로
  • 가 실행을 위해 작업을 제출 한 후, 맵퍼 및 감속기 및 기타 속성을 사용하여 작업을 구성

이 접근 방법은 전체 플로우의 일부인 파티션 파일을 작성하고 작업 제출을 한 단계 조치로 유지합니다.

+0

나는이 클래스가 "드라이버 클래스"라는 이름을 붙일 수 있다고 동의하지만이 코드가 실행되는 곳은 클라이언트 컴퓨터에서 실행 되는가? 따라서 전체 샘플링 코드는 파티션 파일을 생성하는 코드와 함께 클라이언트 시스템에서 실행됩니다 ... 이것은 내 이해입니다 ... 의미가 있는지 확인하고 싶었습니다. – Sudarshan

+0

아. 죄송합니다. 예, 일반적으로 클라이언트 인 작업 구성 클래스가 실행되는 시스템에 있습니다. 당신이 올바른지 –

관련 문제