sqoop 는 hive 와 my sql 간 의 상호 유도 데이터 가 만 나 는 구 덩이 를 완성 합 니 다.
1.
18/04/18 04:50:06 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 7 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
18/04/18 04:50:07 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 8 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
18/04/18 04:50:08 INFO ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 9 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
18/04/18 04:50:08 ERROR tool.ExportTool: Encountered IOException running export job:
java.io.IOException: java.net.ConnectException: Call From node1/172.16.15.130 to 0.0.0.0:10020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
at org.apache.hadoop.mapred.ClientServiceDelegate.invoke(ClientServiceDelegate.java:338)
at org.apache.hadoop.mapred.ClientServiceDelegate.getJobStatus(ClientServiceDelegate.java:423)
at org.apache.hadoop.mapred.YARNRunner.getJobStatus(YARNRunner.java:576)
at org.apache.hadoop.mapreduce.Job$1.run(Job.java:326)
at org.apache.hadoop.mapreduce.Job$1.run(Job.java:323)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1692)
at org.apache.hadoop.mapreduce.Job.updateStatus(Job.java:323)
at org.apache.hadoop.mapreduce.Job.isSuccessful(Job.java:623)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1330)
at org.apache.sqoop.mapreduce.ExportJobBase.doSubmitJob(ExportJobBase.java:324)
at org.apache.sqoop.mapreduce.ExportJobBase.runJob(ExportJobBase.java:301)
at org.apache.sqoop.mapreduce.ExportJobBase.runExport(ExportJobBase.java:442)
at org.apache.sqoop.manager.SqlManager.exportTable(SqlManager.java:931)
at org.apache.sqoop.tool.ExportTool.exportTable(ExportTool.java:80)
at org.apache.sqoop.tool.ExportTool.run(ExportTool.java:99)
at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)
at org.apache.sqoop.Sqoop.main(Sqoop.java:252)
Caused by: java.net.ConnectException: Call From node1/172.16.15.130 to 0.0.0.0:10020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.hadoop.net.NetUtils.wrapWithMessage(NetUtils.java:791)
at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:731)
at org.apache.hadoop.ipc.Client.call(Client.java:1474)
at org.apache.hadoop.ipc.Client.call(Client.java:1401)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:232)
at com.sun.proxy.$Proxy14.getJobReport(Unknown Source)
at org.apache.hadoop.mapreduce.v2.api.impl.pb.client.MRClientProtocolPBClientImpl.getJobReport(MRClientProtocolPBClientImpl.java:133)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.mapred.ClientServiceDelegate.invoke(ClientServiceDelegate.java:324)
... 22 more
이것 은 jobshistory 가 열 리 지 않 아서 생 긴 것 입 니 다.해결 방법 은 jobshistory 를 설정 한 호스트 에서 mr-jobshistory-daemon.sh 입 니 다. start historyserver。그리고 jps 는 Jobhistory Server 라 는 프로 세 스 가 나타 나 면 sqoop 명령 을 다시 실행 하면 됩 니 다.
주의사항:
a.먼저 mapred-site.xml 에 jobshistory 의 rpc 포트 와 웹 포트 를 설정 해 야 합 니 다.
mapreduce.jobhistory.address
node1:10020
mapreduce.jobhistory.webapp.address
node1:19888
b.환경 변 수 를 설정 하지 않 았 다 면 mr-jobshistory-daemon.sh start historyserver 명령 전에 경 로 를 더 해 야 한다.
2.
18/04/18 04:42:13 INFO mapreduce.Job: Counters: 12
Job Counters
Failed map tasks=1
Killed map tasks=3
Launched map tasks=4
Data-local map tasks=4
Total time spent by all maps in occupied slots (ms)=69773
Total time spent by all reduces in occupied slots (ms)=0
Total time spent by all map tasks (ms)=69773
Total vcore-milliseconds taken by all map tasks=69773
Total megabyte-milliseconds taken by all map tasks=71447552
Map-Reduce Framework
CPU time spent (ms)=0
Physical memory (bytes) snapshot=0
Virtual memory (bytes) snapshot=0
18/04/18 04:42:13 WARN mapreduce.Counters: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
18/04/18 04:42:13 INFO mapreduce.ExportJobBase: Transferred 0 bytes in 59.7689 seconds (0 bytes/sec)
18/04/18 04:42:13 INFO mapreduce.ExportJobBase: Exported 0 records.
18/04/18 04:42:13 ERROR mapreduce.ExportJobBase: Export job failed!
18/04/18 04:42:13 ERROR tool.ExportTool: Error during export:
Export job failed!
at org.apache.sqoop.mapreduce.ExportJobBase.runExport(ExportJobBase.java:445)
at org.apache.sqoop.manager.SqlManager.exportTable(SqlManager.java:931)
at org.apache.sqoop.tool.ExportTool.exportTable(ExportTool.java:80)
at org.apache.sqoop.tool.ExportTool.run(ExportTool.java:99)
at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)
at org.apache.sqoop.Sqoop.main(Sqoop.java:252)
이러한 erro 는 여러 가지 종류 가 있 습 니 다.예 를 들 어 hive 표 필드 와 my sql 필드 가 맞지 않 거나 hive 의 구분자 가 있 습 니 다.제 이 유 는 이 두 가지 와 다 릅 니 다.위 에서 알 수 있 듯 이 fail 의 map task 는 하나 있 습 니 다.kill 의 map task 는 세 가지 가 있 습 니 다.jobshistory 에서 kill 의 task 를 보 는 이 유 는 Aggregation is not enabled 입 니 다.솔 루 션 은 Yrn-site.xml 에서 설정 되 어 있 습 니 다.
yarn.log-aggregation-enable
true
fail 의 task 원인 은 Error:java.io.IOException:com.mysql.jdbc.exceptions.jdbc 4.Communications Exception:Communications link failure...
my sql-jdbc-connector 버 전의 문제 로 보 였 으 나,설정 을 바 꾸 어 hadop 을 다시 시작 한 후에 이 erro 가 없어 진 것 을 발견 하 였 습 니 다.
3.일부 connection refused 의 문 제 는 my sql 의 원 격 로그 인 이 설정 되 지 않 았 기 때 문 입 니 다.이 건 다른 블 로그 에 따로 썼어 요.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.