2013-05-20 2 views
1

학습 목적으로 Hadoop을 Java (돼지 또는 하이브 없음)로 사용하여 TF-IDF를 코딩하고 있습니다. 단어 수, 문서 당 단어 수, 단어 당 docCount 순으로 세 번에 나누겠습니다.MultipleInputs를 사용하여 매퍼에서 문서 ID를 얻는 방법

작업의 주 체인은 정확하지만 처음에는 질문이 있습니다. 첫 라운드에서 매퍼 내에서 문서 ID를 얻는 방법은 무엇입니까? > {[단어 수있는 ID] => 1}

  • 감속기 {[-
  • 매퍼 {수있는 ID => [단어]} :

    Path doc1 = new Path(System.getProperty("user.dir") + "/1.dat"); 
        Path doc2 = new Path(System.getProperty("user.dir") + "/2.dat"); 
        Path doc3 = new Path(System.getProperty("user.dir") + "/3.dat"); 
        MultipleInputs.addInputPath(job1, doc1, TextInputFormat.class, MapperRoundOne.class); 
        MultipleInputs.addInputPath(job1, doc2, TextInputFormat.class, MapperRoundOne.class); 
        MultipleInputs.addInputPath(job1, doc3, TextInputFormat.class, MapperRoundOne.class); 
    
    • 1 라운드 : 나는 다음과 같은 다중 입력이 word, docId] => [[word, docId] => wordCount}

    분명히 각 입력을 다른 매퍼로 설정할 수 있으며 docID는 분명히 일반적이지 않습니다. 그렇게하는 방법?

  • 답변

    관련 문제