복붙노트

[HADOOP] MapReduce 작업을 구성하는 동안 여러 InputFormat 클래스 사용

HADOOP

MapReduce 작업을 구성하는 동안 여러 InputFormat 클래스 사용

텍스트와 zip 파일을 모두 처리 할 수있는 MapReduce 응용 프로그램을 작성하고 싶습니다. 이를 위해 하나는 텍스트와 다른 하나는 zip과 같은 다른 입력 형식으로 사용하고 싶습니다. 그렇게 할 수 있습니까?

해결법

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

    1.@ChrisWhite의 답변에서 약간 확장하면 ZIP 파일과 함께 작동하는 사용자 정의 InputFormat 및 RecordReader를 사용해야합니다. 여기에서 샘플 ZipFileInputFormat과 여기에서 샘플 ZipFileRecordReader를 찾을 수 있습니다.

    @ChrisWhite의 답변에서 약간 확장하면 ZIP 파일과 함께 작동하는 사용자 정의 InputFormat 및 RecordReader를 사용해야합니다. 여기에서 샘플 ZipFileInputFormat과 여기에서 샘플 ZipFileRecordReader를 찾을 수 있습니다.

    Chris가 제안한 것처럼 MultipleInputs를 사용해야한다고 제안 했으므로 각 파일 유형에 대해 사용자 정의 매퍼가 필요하지 않은 경우 어떻게해야합니까?

    MultipleInputs.addInputPath(job, new Path("/path/to/zip"), ZipFileInputFormat.class);
    MultipleInputs.addInputPath(job, new Path("/path/to/txt"), TextInputFormat.class);
    
  2. ==============================

    2.MultipleInputs (이전 API, 새로운 API)에 대한 API 문서를 살펴보십시오. 자체 설명은 아니지만 작업 구성에서 addInputPath 메소드를 호출하고 입력 경로 (글로브, 입력 형식 및 연관된 매퍼 일 수 있음)를 구성 할 수 있습니다.

    MultipleInputs (이전 API, 새로운 API)에 대한 API 문서를 살펴보십시오. 자체 설명은 아니지만 작업 구성에서 addInputPath 메소드를 호출하고 입력 경로 (글로브, 입력 형식 및 연관된 매퍼 일 수 있음)를 구성 할 수 있습니다.

    몇 가지 예를 들어 Google에있을 수 있어야합니다. 실제로 사용법을 보여주는 SO 질문 / 답변이 있습니다.

  3. ==============================

    3.어떤 종류의 입력을 읽고 있는지 확인한 다음 확인을 기반으로 필요한 InputFormat을 호출 할 수있는 사용자 정의 InputFormat 작성을 고려하십시오.

    어떤 종류의 입력을 읽고 있는지 확인한 다음 확인을 기반으로 필요한 InputFormat을 호출 할 수있는 사용자 정의 InputFormat 작성을 고려하십시오.

  4. from https://stackoverflow.com/questions/14333596/using-multiple-inputformat-classes-while-configuring-mapreduce-job by cc-by-sa and MIT license