出口从hdsf和双精度浮点数到MySQL我使用Hadoop版本1.2.1和1.4.4 sqoop问题使用sqoop
我是新来的Hadoop/sqoop时遇到的一个问题。我有数据在hdfs中,我想导出到MySQL但导出保持失败。 我所用的语句是:
sqoop出口--connect的jdbc:mysql的:// {IP地址}/{}数据库用户名--username -P --table {}表名--export-dir的{出口DIR} --input场终止-用 '' --lines终止的,由 '\ n' --verbose
我得到的错误是:
14/02/28 10:12:40 INFO mapred.JobClient: Running job: job_201402040959_0234
14/02/28 10:12:41 INFO mapred.JobClient: map 0% reduce 0%
14/02/28 10:12:51 INFO mapred.JobClient: map 50% reduce 0%
14/02/28 10:22:51 INFO mapred.JobClient: map 0% reduce 0%
14/02/28 10:22:52 INFO mapred.JobClient: Task Id : attempt_201402040959_0234_m_000000_0, Status : FAILED
Task attempt_201402040959_0234_m_000000_0 failed to report status for 600 seconds. Killing!
14/02/28 10:22:52 INFO mapred.JobClient: Task Id : attempt_201402040959_0234_m_000001_0, Status : FAILED
Task attempt_201402040959_0234_m_000001_0 failed to report status for 600 seconds. Killing!
14/02/28 10:23:00 INFO mapred.JobClient: map 50% reduce 0%
14/02/28 10:33:00 INFO mapred.JobClient: map 0% reduce 0%
14/02/28 10:33:00 INFO mapred.JobClient: Task Id : attempt_201402040959_0234_m_000000_1, Status : FAILED
Task attempt_201402040959_0234_m_000000_1 failed to report status for 600 seconds. Killing!
14/02/28 10:33:00 INFO mapred.JobClient: Task Id : attempt_201402040959_0234_m_000001_1, Status : FAILED
Task attempt_201402040959_0234_m_000001_1 failed to report status for 600 seconds. Killing!
14/02/28 10:33:09 INFO mapred.JobClient: map 50% reduce 0%
14/02/28 10:43:09 INFO mapred.JobClient: map 0% reduce 0%
14/02/28 10:43:09 INFO mapred.JobClient: Task Id : attempt_201402040959_0234_m_000000_2, Status : FAILED
Task attempt_201402040959_0234_m_000000_2 failed to report status for 600 seconds. Killing!
14/02/28 10:43:10 INFO mapred.JobClient: Task Id : attempt_201402040959_0234_m_000001_2, Status : FAILED
Task attempt_201402040959_0234_m_000001_2 failed to report status for 600 seconds. Killing!
14/02/28 10:43:18 INFO mapred.JobClient: map 50% reduce 0%
14/02/28 10:53:18 INFO mapred.JobClient: map 25% reduce 0%
14/02/28 10:53:19 INFO mapred.JobClient: map 0% reduce 0%
14/02/28 10:53:20 INFO mapred.JobClient: Job complete: job_201402040959_0234
14/02/28 10:53:20 INFO mapred.JobClient: Counters: 7
14/02/28 10:53:20 INFO mapred.JobClient: Job Counters
14/02/28 10:53:20 INFO mapred.JobClient: SLOTS_MILLIS_MAPS=11987
14/02/28 10:53:20 INFO mapred.JobClient: Total time spent by all reduces waiting after reserving slots (ms)=0
14/02/28 10:53:20 INFO mapred.JobClient: Total time spent by all maps waiting after reserving slots (ms)=0
14/02/28 10:53:20 INFO mapred.JobClient: Launched map tasks=8
14/02/28 10:53:20 INFO mapred.JobClient: Data-local map tasks=8
14/02/28 10:53:20 INFO mapred.JobClient: SLOTS_MILLIS_REDUCES=0
14/02/28 10:53:20 INFO mapred.JobClient: Failed map tasks=1
14/02/28 10:53:20 INFO mapreduce.ExportJobBase: Transferred 0 bytes in 2,441.242 seconds (0 bytes/sec)
14/02/28 10:53:20 INFO mapreduce.ExportJobBase: Exported 0 records.
14/02/28 10:53:20 ERROR tool.ExportTool: Error during export: Export job failed!
的数据的例子是:
201110,1.8181818181818181
201111,1.4597701149425288
201112,1.766990291262136
20119,1.6153846153846154
20121,1.5857142857142856
201210,1.55
201211,1.5294117647058822
201212,1.6528925619834711
20122,1.5789473684210527
20123,1.4848484848484849
20124,1.654320987654321
20125,1.5942028985507246
20126,1.5333333333333334
20127,1.4736842105263157
20128,1.4666666666666666
20129,1.4794520547945205
20131,1.6875
201310,8.233183856502242
201311,8.524886877828054
201312,9.333333333333334
20132,1.7272727272727273
20133,3.42
20134,6.380597014925373
20135,9.504716981132075
20136,8.538812785388128
20137,8.609649122807017
20138,8.777272727272727
20139,8.506787330316742
20141,4.741784037558685
我试着用相同的导出语句导出一个类似的数据集,只用整数而不是双精度,并且成功。我也尝试过使用浮动而不是双打的类似数据集,但那也失败了。请有人给我一个暗示,为什么这不起作用?我对不适合MySQL的数据类型做错了什么?
我还试图运行具有以下附加相同的查询:
-m 1
这给出了相同的错误如上述,除了在地图上步骤完成到100%,而不是仅仅50%。
- 谢谢,请让我知道,如果我应该提供一些额外的信息。
我查看了$ HADOOP_MAPRED_HOME/logs中的日志很长一段时间,但是我仍然没有看到我的错误来自哪里。有一堆不同的日志文件,不知何故,我没有找到任何解释为什么错误被抛出的原因。我试着比较成功的整数导出到失败的浮动导出,我没有注意到日志中的差异。你有什么建议吗?再次感谢,抱歉,如果我的问题有点模糊。我有点困惑,但我可以尝试澄清,如果你告诉我。 – Murium