[HADOOP] WordCount MapReduce를 실행하는 동안 입력 경로가 없습니다
HADOOPWordCount MapReduce를 실행하는 동안 입력 경로가 없습니다
우분투에 단일 노드 클러스터를 설치했습니다. 워드 카운트 프로그램을 실행하려고합니다. jar 파일을 만들었습니다. 그러나이 명령을 실행할 때 :
hadoop jar '/home/hduser/Desktop/TutorialFolder/firstTutorial.jar' WordCount /home/hduser/Desktop/TutorialFolder/input_data /TutorialFolder/Output
아래 오류가 발생합니다.
Exception in thread "main"
org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist:
hdfs://localhost:9000/home/hduser/Desktop/TutorialFolder/input_data
at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.singleThreadedListStatus(FileInputFormat.java:323)
해결법
-
==============================
1.로컬 모드에서 Hadoop을 실행하지 않는 한 mapreduce에 제공된 입력 및 출력 경로는 유효한 HDFS 경로 여야합니다.
로컬 모드에서 Hadoop을 실행하지 않는 한 mapreduce에 제공된 입력 및 출력 경로는 유효한 HDFS 경로 여야합니다.
여기에 전달 된 입력 경로 / home / hduser / Desktop / TutorialFolder / input_data는 로컬 디렉토리처럼 보입니다. HDFS에서 유사한 구조를 작성하고 입력 데이터를 HDFS의 해당 디렉토리에 업로드하십시오.
hdfs dfs -mkdir -p /wordcount/input_data hdfs dfs -put /home/hduser/Desktop/TutorialFolder/input_data/ /wordcount/input_data/
또한 출력 경로는 HDFS에 있어야합니다. HDFS 경로로 항아리를 실행하십시오.
hadoop jar /home/hduser/Desktop/TutorialFolder/firstTutorial.jar WordCount /wordcount/input_data /wordcount/output
-
==============================
2.의사 분산 모드에서 실행중인 경우 입력 경로는 데스크톱 폴더가없는 HDFS에 존재해야합니다.
의사 분산 모드에서 실행중인 경우 입력 경로는 데스크톱 폴더가없는 HDFS에 존재해야합니다.
hdfs dfs -ls / home / hduser를 실행하여 사용 가능한 내용을 검사하고 파일을 저장하십시오.
해당 폴더가 없으면 자습서로 돌아가서 HDFS를 설정해야합니다.
hdfs dfs -mkdir -p / home / hduser를 실행하십시오.
참고 : 권한 거부 오류가 발생할 수 있습니다.
from https://stackoverflow.com/questions/42458492/input-path-does-not-exists-while-running-wordcount-mapreduce by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 페이스 북 페이지 / 피드 / 포스트를 읽는 Flume (0) | 2019.09.15 |
---|---|
[HADOOP] 조건에 특정한 값을 증가시키는 방법? (0) | 2019.09.15 |
[HADOOP] Pig 사용자 정의 행 / 레코드 구분 기호를 사용하여 파일 저장 (0) | 2019.09.15 |
[HADOOP] MapRe에서 조회를 위해 XML 파일을 읽도록 허용하는 방법 (0) | 2019.09.15 |
[HADOOP] cron에 의해 호출 될 때 하둡 작업이 실패 함 (0) | 2019.09.15 |