2012-08-06 1 views
1

매퍼 (mapper)에 텍스트 파일을 입력하고 시퀀스 파일을 출력하고 싶습니다. 간단한지도를 작성하는 방법 - 동일한 작업을 줄일 수 있습니까? 텍스트 파일에는 탭 구분 값이 있습니다. 예 입력 : 그룹 1 1 2 3 4 5
이러한 입력의 난의 키에서 "그룹 1"이되며, 그 값이 1 2 3 4 5탭으로 구분 된 텍스트 파일을 시퀀스 파일로 변환하는 간단한 map-reduce 작업을 작성하는 방법은 무엇입니까?

의 벡터이어야 출력 시퀀스 파일을 작성하고자 어떻게이 일자리를 쓸 수 있습니까? 또한이 경우 감속기가 필요 없다고 느낍니다. 이 경우 ID 감속기 작업을 작성하는 방법은 무엇입니까? 감속기 작업을 생략 할 수 있습니까?

감사합니다. 감사합니다.

+1

Hadoop이 필요하지 않습니다. 번거롭게할만한 충분한 데이터가 있는지 확인하십시오. –

+0

현재로서는 데이터가 그리 크지 않지만 모든 것이 작동하면 큰 데이터 세트에서 실행됩니다. 어쨌든 이것은 해결되었습니다. 나는 이것을 위해 단지 map 함수를 작성했다. 응답 주셔서 감사합니다! – Amruta

답변

0

예, 건너 뛸 수 있습니다 Reducer. 간단히 Reducer.class으로 설정하십시오. setNumReduceTasks(0)으로 전화하십시오. MapperTextInputFormat이어야하며 Long, Text을 키/값 입력으로 사용해야합니다. Text이 선입니다. 그러나 당신이 원하는대로 키/값을 출력하고 TextText과 같이 출력하십시오. 시퀀스 파일을 쓰려면 SequenceFileOutputFormat을 지정하십시오.

나는 왜 당신이 이것을하고 싶은지 아직 알지 못한다. 그러나 그렇게하는 방법이다.

+0

오 OK. 답변 해주셔서 감사합니다! 텍스트 파일이 주어진 단순한 시퀀스 파일을 만들고 싶었습니다. 입력 파일이 시퀀스 파일 형식이어야하는 Hadoop을 사용하는 Naive Bayesian 알고리즘을 사용하고 있습니다. – Amruta

+0

글쎄, "시퀀스 파일"하나의 형식이 아닙니다. 그것은 "입력이 XML로되어 있어야합니다"라고 말하는 것과 같습니다. 그것은 컨테이너 형식입니다. 독자가 기대하는 것과 똑같은 키와 값을 갖는 시퀀스 *가 가장 확실합니다. 이것이 Mahout 인 경우 여기에서 출력하는 것은 분명하지 않습니다. –

관련 문제