[HADOOP] hadoop-streaming.jar는 각 줄의 끝에 x'09 '를 추가합니다
HADOOPhadoop-streaming.jar는 각 줄의 끝에 x'09 '를 추가합니다
아래의 hadoop-streaming.jar 명령을 사용하여 HDFS 위치에 * _0 (HDFS의 일부 파일) 파일을 병합하려고합니다.
hadoop jar $HDPHOME/hadoop-streaming.jar -Dmapred.reduce.tasks=1 -input $INDIR -output $OUTTMP/${OUTFILE} -mapper cat -reducer cat
일이 잘 작동합니다-예외로, 위 명령의 결과가 각 줄의 끝에 x'09 '를 추가하는 것처럼 보입니다.
마지막 필드가 BIGINT로 정의 된 부분 파일 (병합 된 파일로 대체 됨) 위에 Hive 테이블이 정의되어 있습니다. 병합 된 파일은 x'09 '를 마지막 필드에 추가하기 때문에 tbale의 동일한 정의는 색조의 마지막 필드에서 NULL을 표시합니다 (510408은 더 이상 X'09'가 추가 된 숫자가 아님).
년
부품 파일의 데이터.
00000320 7c 35 31 30 34 30 38 0a ||510408.|
병합 된 파일의 데이터 (위 명령의 결과)
00000320 7c 35 31 30 34 30 38 09 0a ||510408..|
이 문제가 발생하지 않도록하려면 이를 방지하기 위해 명령에서 설정할 수있는 옵션이 있습니까?
도움 / 포인터를위한 시간을 보내십시오.
해결법
-
==============================
1.이 게시물에서 답을 찾았습니다.
이 게시물에서 답을 찾았습니다.
아래 옵션을 추가하면 문제가 해결됩니다.
-D mapred.textoutputformat.separator=<delimiter-of-input-file>
from https://stackoverflow.com/questions/45620256/hadoop-streaming-jar-adds-x09-at-the-end-of-each-line by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Hadoop 3 : 삭제 코딩을 구성 / 활성화하는 방법은 무엇입니까? (0) | 2019.09.15 |
---|---|
[HADOOP] Dataframe.toPandas는 항상 드라이버 노드 또는 작업자 노드에 있습니까? (0) | 2019.09.15 |
[HADOOP] 기본 키로 하이브 테이블을 만들 수 없습니다 (0) | 2019.09.15 |
[HADOOP] 복잡한 편집을 구현하는 방법은 무엇입니까? (0) | 2019.09.15 |
[HADOOP] 하둡과 NLTK : 스톱 워드로 실패 (0) | 2019.09.15 |