sqoop导出到sql server-无法分析字符串值(ntl national)

4zcjmb1e  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(394)

我正在尝试使用sqoop将配置单元表导出到sqlserver。我在配置单元表中有一个字符串字段,sql server中该字段的格式是varchar(255)。运行以下sqoop导出时:

  1. sqoop export -Dmapreduce.job.queuename=default
  2. --connect 'jdbc:sqlserver://IPaddress:portnumber;databasename=mydbname'
  3. --username xxx
  4. --password xxx
  5. --table tablename
  6. --export-dir /hive_directory/tablename
  7. --columns all_my_columns
  8. --input-fields-terminated-by '^'
  9. --input-null-string "\\\\N" --input-null-non-string "\\\\N"

我得到下面的错误。字段值类似于…ntl national。感谢您对解析此值的任何想法。谢谢您。

  1. INFO mapreduce.Job: Task Id : attempt_1468858380028_769962_m_000002_0, Status : FAILED
  2. Error: java.io.IOException: Can't export data, please check failed map task logs
  3. at org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:112)
  4. at org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:39)
  5. at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146)
  6. at org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64)
  7. at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787)
  8. at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
  9. at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
  10. at java.security.AccessController.doPrivileged(Native Method)
  11. at javax.security.auth.Subject.doAs(Subject.java:422)
  12. at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657)
  13. at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
  14. Caused by: java.lang.RuntimeException: Can't parse input data: 'NTL-NATIONAL'
  15. at test_fnl.__loadFromFields(test_fnl.java:1109)
  16. at test_fnl.parse(test_fnl.java:952)
  17. at org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:83)
  18. ... 10 more
  19. Caused by: java.util.NoSuchElementException
  20. at java.util.ArrayList$Itr.next(ArrayList.java:854)
  21. at test_fnl.__loadFromFields(test_fnl.java:1104)
  22. ... 12 more
iswrvxsc

iswrvxsc1#

你试过把这个论点包括进去吗?

  1. --input-lines-terminated-by <char>

  1. --input-lines-terminated-by '\n'

相关问题