【发布时间】:2014-06-19 15:17:49
【问题描述】:
我正在尝试将数据从 hive 导出到 mssql 服务器,我知道 sqoop 和 sql 服务器都可以,因为我可以毫无问题地导出另一个表。
我得到的错误是:
14/06/19 14:48:37 信息 mapreduce.Job:任务 ID:尝试_1403175168750_0031_m_000003_0,状态:失败 错误:java.io.IOException:无法导出数据,请检查失败的地图任务日志 在 org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:112) 在 org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:39) 在 org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145) 在 org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64) 在 org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764) 在 org.apache.hadoop.mapred.MapTask.run(MapTask.java:340) 在 org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168) 在 java.security.AccessController.doPrivileged(本机方法) 在 javax.security.auth.Subject.doAs(Subject.java:415) 在 org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548) 在 org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163) 原因:java.lang.RuntimeException:无法解析输入数据:'你可能对你想要如何生活抱有秘密幻想......更多处女座http://t.co/Jnt91NMNt5' 在 StageFlumeTweets.__loadFromFields(StageFlumeTweets.java:236) 在 StageFlumeTweets.parse(StageFlumeTweets.java:174) 在 org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:83) ... 10 更多 引起:java.lang.NumberFormatException:对于输入字符串:“你可能对你想要如何生活抱有秘密幻想......更多处女座http://t.co/Jnt91NMNt5” 在 java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) 在 java.lang.Long.parseLong(Long.java:441) 在 java.lang.Long.valueOf(Long.java:540) 在 StageFlumeTweets.__loadFromFields(StageFlumeTweets.java:228) ... 12 更多
我用来导出数据的命令是:
sqoop 导出 --verbose --connect "jdbc:sqlserver://xx;database=xx;username=xx;password=xx" --export-dir /user/hive/warehouse/xx/twitter_bulk2/ --表 StageFlumeTweets --input-fields-terminated-by ','
包含数据的文件只是一个 tweetid,文本如下:
468751929271517185,RT @BestofScorpio:一个女人可能想要你,但她不需要你。 468751929565130752,这个我要借别人的红口红
【问题讨论】:
标签: sql-server hadoop mapreduce sqoop sqoop2