使用Teradata Hadoop Connector时连接被拒绝异常

时间:2015-10-30 11:56:41

标签: hadoop jdbc teradata

我目前正在使用免费版的Teradata Hadoop连接器teradata-connector 1.3.4将数据加载到Teradata。我正在使用internal.fastload来加载数据。

数据库版本是14.10

jdbc驱动程序版本是15.0

有时我在运行作业时遇到 Connection refused exception ,但在重置负载作业2-3次时此问题就会消失。这也与teradata数据库上的负载无关,因为负载非常正常。抛出的异常如下:

15/10/29 22:52:54 INFO mapreduce.Job: Running job: job_1445506804193_290389
com.teradata.connector.common.exception.ConnectorException: Internal fast load socket server time out
    at com.teradata.connector.teradata.TeradataInternalFastloadOutputFormat$InternalFastloadCoordinator.beginLoading(TeradataInternalFastloadOutputFormat.java:642)
    at com.teradata.connector.teradata.TeradataInternalFastloadOutputFormat$InternalFastloadCoordinator.run(TeradataInternalFastloadOutputFormat.java:503)
    at java.lang.Thread.run(Thread.java:745)
15/10/29 23:39:29 INFO mapreduce.Job: Job job_1445506804193_290389 running in uber mode : false
15/10/29 23:39:29 INFO mapreduce.Job:  map 0% reduce 0%
15/10/29 23:40:08 INFO mapreduce.Job: Task Id : attempt_1445506804193_290389_m_000001_0, Status : FAILED
Error: com.teradata.connector.common.exception.ConnectorException: java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at java.net.Socket.connect(Socket.java:538)
    at java.net.Socket.<init>(Socket.java:434)
    at java.net.Socket.<init>(Socket.java:211)
    at com.teradata.connector.teradata.TeradataInternalFastloadOutputFormat.getRecordWriter(TeradataInternalFastloadOutputFormat.java:301)
    at com.teradata.connector.common.ConnectorOutputFormat$ConnectorFileRecordWriter.<init>(ConnectorOutputFormat.java:84)
    at com.teradata.connector.common.ConnectorOutputFormat.getRecordWriter(ConnectorOutputFormat.java:33)
    at org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.<init>(MapTask.java:624)
    at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:744)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:340)
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:167)
    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:1591)
    at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)

这方面的任何指示肯定会有所帮助。

提前致谢。

1 个答案:

答案 0 :(得分:2)

根本原因:com.teradata.connector.common.exception.ConnectorException: Internal fast load socket server time out

内部快速加载服务器套接字超时

使用&#34; internal.fastload&#34;运行导出作业时方法,可能会出现以下错误:内部快速加载套接字服务器超时

发生此错误是因为当前可用的地图任务数少于命令行中按&#34; -nummappers&#34;参数指定的地图任务数。

在以下情况下可能会发生此错误:

(1)在Hadoop集群中还有一些其他map / reduce作业同时运行,因此没有足够的资源为导出作业分配指定的map任务。

(2)最大地图任务数小于现有地图任务,增加了Hadoop集群中导出作业的预期地图任务。

发生上述错误时,请尝试增加Hadoop群集的最大映射任务数,或减少导出作业的地图任务数 < / p>

@ teradata

提供了很好的射手PDF

如果您遇到任何类型的错误,请查看以上PDF并将其修复。

如果您需要对其进行微调,请查看其他地图缩小properties