[HADOOP] org.apache.hadoop.mapreduce.lib.input.SequenceFileRecordReader.close에서 java.lang.NullPointerException이
HADOOPorg.apache.hadoop.mapreduce.lib.input.SequenceFileRecordReader.close에서 java.lang.NullPointerException이
나는이지도-감소 쌍을 실행하고 있습니다. 제 출력 맵-줄이기 다음 맵을 줄이기위한 입력으로 사용되고있다. 위해 나는 job.setOutputFormatClass (SequenceFileOutputFormat.class)을 부여했다고 할 수 있습니다. 다음 드라이버 클래스를 실행하는 동안 :
패키지 조직;
수입 org.apache.commons.configuration.ConfigurationFactory;
수입 org.apache.hadoop.conf.Configured;
수입 org.apache.hadoop.fs.Path;
수입 org.apache.hadoop.io.Text;
수입 org.apache.hadoop.mapreduce.Job;
수입 org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
수입 org.apache.hadoop.mapreduce.lib.input.SequenceFileInputFormat;
수입 org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
수입 org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
수입 org.apache.hadoop.mapreduce.lib.output.SequenceFileOutputFormat;
수입 org.apache.hadoop.util.Tool;
수입 org.apache.hadoop.util.ToolRunner;
수입 org.apache.mahout.math.VarLongWritable;
수입 org.apache.mahout.math.VectorWritable;
공용 클래스 드라이버 1 구성 구현 도구를 확장
{
공공 INT 실행 (문자열 []에 인수) 예외를 throw
{
(args.length! = 3)의 경우 {
System.err.println을 ( "사용 : MaxTemperatureDriver
나는 다음과 같은 런타임 로그를 얻고있다.
플랫폼을위한 네이티브 하둡 라이브러리를로드 할 수 ... 내장 - 자바 클래스에 해당되는 경우를 사용 할 수 없습니다 : 15/02/24 20시 0분 49초는 util.NativeCodeLoader WARN 인수를 구문 분석을 위해 사용 GenericOptionsParser : 15/02/24 20시 0분 49초는 mapred.JobClient을 경고한다. 응용 프로그램은 동일한위한 도구를 구현해야합니다. 15/02/24 20시 0분 49초는 mapred.JobClient을 WARN : 없음 작업 jar 파일 세트를. 사용자 클래스가 발견되지 않을 수 있습니다. JobConf (클래스) 또는 JobConf # setJar (String)를 참조하십시오. 15/02/24 20시 0분 49초 정보 input.FileInputFormat : 프로세스 총 입력 경로 1 15/02/24 20시 0분 49초는 snappy.LoadSnappy을 WARN :로드되지 뭐 이따위로 네이티브 라이브러리를 15/02/24 20시 0분 49초 정보의 mapred.JobClient : 실행중인 작업 : job_local1723586736_0001 15/02/24 20시 0분 49초 정보 mapred.LocalJobRunner은 :지도 작업 대기 중 15/02/24 20시 0분 49초 정보 mapred.LocalJobRunner : 시작 작업 : attempt_local1723586736_0001_m_000000_0 15/02/24 20시 0분 49초 정보 util.ProcessTree가 : 종료 코드 0으로 종료 setsid 15/02/24 20시 0분 49초 정보 mapred.Task : 사용 ResourceCalculatorPlugin : org.apache.hadoop.util.LinuxResourceCalculatorPlugin@1185f32 15/02/24 20시 0분 49초 정보 mapred.MapTask : 처리 분할 : 파일 : /home/smaiti/workspace/recommendationsy/data.txt : 0 + 1979173 15/02/24 20시 0분 50초 INFO mapred.MapTask : io.sort.mb = 100 15/02/24 20시 0분 50초 INFO mapred.MapTask : 데이터 버퍼 = 99,614,720분의 79,691,776 15/02/24 20시 0분 50초 INFO mapred.MapTask : 기록 버퍼 = 327,680분의 262,144 15/02/24 20시 0분 50초 정보 mapred.JobClient :지도 0 % 0 % 감소 15/02/24 20시 0분 50초 정보 mapred.MapTask :지도 출력의 플러시 시작 15/02/24 20시 0분 51초 정보 mapred.MapTask : 완료 유출 0 15/02/24 20시 0분 51초 정보 mapred.Task : 작업 : attempt_local1723586736_0001_m_000000_0이 이루어집니다. 그리고 커밋하는 과정에있다 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 15/02/24 20시 0분 51초 정보 mapred.Task : 수행 작업 'attempt_local1723586736_0001_m_000000_0'. 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 마무리 작업 : attempt_local1723586736_0001_m_000000_0 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner :지도 작업 실행이 완료되었습니다. 15/02/24 20시 0분 51초 정보 mapred.Task : ResourceCalculatorPlugin 사용 : org.apache.hadoop.util.LinuxResourceCalculatorPlugin@9cce9를 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 15/02/24 20시 0분 51초 정보 mapred.Merger : 1 개 분류 세그먼트를 병합 15/02/24 20시 0분 51초 INFO mapred.Merger : 전체 크기의 좌측 1 개 세그먼트 병합 마지막 패스, 아래 : 2,074,779 바이트 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 15/02/24 20시 0분 51초 정보 mapred.Task : 작업 : attempt_local1723586736_0001_r_000000_0이 이루어집니다. 그리고 커밋하는 과정에있다 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 15/02/24 20시 0분 51초 정보 mapred.Task : 작업 attempt_local1723586736_0001_r_000000_0 이제 커밋 할 수있다 15/02/24 20시 0분 51초 정보의 output.FileOutputCommitter : 출력 작업 'attempt_local1723586736_0001_r_000000_0'의 저장된 출력 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 감소> 감소 15/02/24 20시 0분 51초 정보 mapred.Task : 수행 작업 'attempt_local1723586736_0001_r_000000_0'. 15/02/24 20시 0분 51초 정보 mapred.JobClient :지도 100 % 100 % 감소 15/02/24 20시 0분 51초 정보 mapred.JobClient : 작업 완료 : job_local1723586736_0001 15/02/24 20시 0분 51초 정보 mapred.JobClient : 카운터 : 20 15/02/24 20시 0분 51초 정보 mapred.JobClient : 파일 출력 형식 카운터 15/02/24 20시 0분 51초 정보 mapred.JobClient : 바이트 글 = 1012481 15/02/24 20시 0분 51초 정보 mapred.JobClient : 파일 입력 형식 카운터 15/02/24 20시 0분 51초 정보 mapred.JobClient : 바이트 읽기 = 1979173 15/02/24 20시 0분 51초 정보 mapred.JobClient : FileSystemCounters 15/02/24 20시 0분 51초 정보 mapred.JobClient : FILE_BYTES_READ = 6033479 15/02/24 20시 0분 51초 정보 mapred.JobClient : FILE_BYTES_WRITTEN = 5264031 15/02/24 20시 0분 51초 정보 mapred.JobClient : 프레임 워크를지도-감소 15/02/24 20시 0분 51초 INFO mapred.JobClient : 축소 입력 그룹 = 943 15/02/24 20시 0분 51초 정보 mapred.JobClient은 :지도 출력 바이트 = 2,074,783 구체화 15/02/24 20시 0분 51초 정보 mapred.JobClient : 겸용 출력 레코드 = 0 15/02/24 20시 0분 51초 정보 mapred.JobClient :지도 입력 레코드 = 100000 15/02/24 20시 0분 51초 정보 mapred.JobClient : 줄 셔플 바이트 = 0 15/02/24 20시 0분 51초 정보 mapred.JobClient : 실제 메모리 (바이트) 스냅 샷 = 0 15/02/24 20시 0분 51초 INFO mapred.JobClient : 출력 레코드를 감소 = 943 15/02/24 20시 0분 51초 정보 mapred.JobClient : 기록 = 200000 유출 된 15/02/24 20시 0분 51초 정보 mapred.JobClient :지도 출력 바이트 = 1,874,777 15/02/24 20시 0분 51초 정보 mapred.JobClient : 총 헌신적 인 힙 사용량 (바이트) = 415,760,384 15/02/24 20시 0분 51초 정보 mapred.JobClient : CPU 시간 소요 (MS) = 0 15/02/24 20시 0분 51초 정보 mapred.JobClient : 가상 메모리 (바이트) 스냅 샷 = 0 15/02/24 20시 0분 51초 INFO mapred.JobClient : SPLIT_RAW_BYTES = 118 15/02/24 20시 0분 51초 정보 mapred.JobClient :지도 출력 기록 = 100000 15/02/24 20시 0분 51초 정보 mapred.JobClient : 겸용 입력 레코드 = 0 15/02/24 20시 0분 51초 INFO mapred.JobClient : 입력 레코드 줄이기 = 100000 인수를 구문 분석을 위해 사용 GenericOptionsParser : 15/02/24 20시 0분 51초는 mapred.JobClient을 경고한다. 응용 프로그램은 동일한위한 도구를 구현해야합니다. 15/02/24 20시 0분 51초는 mapred.JobClient을 WARN : 없음 작업 jar 파일 세트를. 사용자 클래스가 발견되지 않을 수 있습니다. JobConf (클래스) 또는 JobConf # setJar (String)를 참조하십시오. 15/02/24 20시 0분 51초 정보 input.FileInputFormat : 프로세스 총 입력 경로 1 15/02/24 20시 0분 51초 정보의 mapred.JobClient : 실행중인 작업 : job_local735350013_0002 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner은 :지도 작업 대기 중 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner : 시작 작업 : attempt_local735350013_0002_m_000000_0 15/02/24 20시 0분 51초 정보 mapred.Task : 사용 ResourceCalculatorPlugin : org.apache.hadoop.util.LinuxResourceCalculatorPlugin@1a970 15/02/24 20시 0분 51초 정보 mapred.MapTask : 처리 분할 : 파일 : / 홈 / smaiti / 작업 / recommendationsy / 출력 / 부품-R-00000 : 0 + 1004621 15/02/24 20시 0분 51초 INFO mapred.MapTask : io.sort.mb = 100 15/02/24 20시 0분 51초 INFO mapred.MapTask : 데이터 버퍼 = 99,614,720분의 79,691,776 15/02/24 20시 0분 51초 INFO mapred.MapTask : 기록 버퍼 = 327,680분의 262,144 15/02/24 20시 0분 51초 정보 mapred.MapTask : org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader@9cc591에 가까운 중에 예외를 무시 java.lang.NullPointerException이 org.apache.hadoop.mapreduce.lib.input.SequenceFileRecordReader.close에서 (SequenceFileRecordReader.java:101) org.apache.hadoop.mapred.MapTask $ NewTrackingRecordReader.close (MapTask.java:496)에서 org.apache.hadoop.mapred.MapTask.closeQuietly에서 (MapTask.java:1776) org.apache.hadoop.mapred.MapTask.runNewMapper에서 (MapTask.java:778) org.apache.hadoop.mapred.MapTask.run에서 (MapTask.java:364) org.apache.hadoop.mapred.LocalJobRunner $ 작업 $ MapTaskRunnable.run (LocalJobRunner.java:223)에서 java.util.concurrent.Executors $ RunnableAdapter.call에서 (Executors.java:471) java.util.concurrent.FutureTask.run에서 (FutureTask.java:262) java.util.concurrent.ThreadPoolExecutor.runWorker에서 (ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:615)에서 java.lang.Thread.run에서 (Thread.java:745) 15/02/24 20시 0분 51초 정보 mapred.LocalJobRunner :지도 작업 실행이 완료되었습니다. 15/02/24 20시 0분 51초는 mapred.LocalJobRunner 경고 : job_local735350013_0002를 의 java.lang.Exception : java.lang.ClassCastException가 : 클래스 org.apache.mahout.math.VectorWritable org.apache.hadoop.mapred.LocalJobRunner $ Job.run (LocalJobRunner.java:354)에서 java.lang.ClassCastException가 :에 의한 클래스 org.apache.mahout.math.VectorWritable java.lang.Class.asSubclass에서 (Class.java:3208) org.apache.hadoop.mapred.JobConf.getOutputKeyComparator에서 (JobConf.java:795) org.apache.hadoop.mapred.MapTask $ MapOutputBuffer에서. <초기화> (MapTask.java:964) org.apache.hadoop.mapred.MapTask $ NewOutputCollector에서. <초기화> (MapTask.java:673) org.apache.hadoop.mapred.MapTask.runNewMapper에서 (MapTask.java:756) org.apache.hadoop.mapred.MapTask.run에서 (MapTask.java:364) org.apache.hadoop.mapred.LocalJobRunner $ 작업 $ MapTaskRunnable.run (LocalJobRunner.java:223)에서 java.util.concurrent.Executors $ RunnableAdapter.call에서 (Executors.java:471) java.util.concurrent.FutureTask.run에서 (FutureTask.java:262) java.util.concurrent.ThreadPoolExecutor.runWorker에서 (ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:615)에서 java.lang.Thread.run에서 (Thread.java:745) 15/02/24 20시 0분 52초 정보 mapred.JobClient :지도 0 % 0 % 감소 15/02/24 20시 0분 52초 정보 mapred.JobClient : 작업 완료 : job_local735350013_0002 15/02/24 20시 0분 52초 정보 mapred.JobClient : 카운터 : 0
나는 점점 오전 첫 번째 예외는 이것이다 : java.lang.NullPointerException이 org.apache.hadoop.mapreduce.lib.input.SequenceFileRecordReader.close에서 (SequenceFileRecordReader.java:101)
도와주세요.
해결법
-
==============================
1.데이터를 직렬화하는 동안 하둡 혼란 때문에이 중심이다.
데이터를 직렬화하는 동안 하둡 혼란 때문에이 중심이다.
에 있는지 확인
from https://stackoverflow.com/questions/28699037/java-lang-nullpointerexception-at-org-apache-hadoop-mapreduce-lib-input-sequence by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 감속기에서 여러 테이블에 출력 쓰기 (0) | 2019.10.19 |
---|---|
[HADOOP] 하둡 돼지 분석 기능을 주문한 (0) | 2019.10.19 |
[HADOOP] 종료 상태의 하이브 배치 모드 목록? (0) | 2019.10.19 |
[HADOOP] 파일 코디네이터 oozie 설정에 존재하지 않는 경우 오류를 해결하는 방법 (0) | 2019.10.18 |
[HADOOP] 맵리 듀스 하둡에 대한 PDF 입력 형식 (0) | 2019.10.18 |