sqoop从配置单元导出到netezza

pgx2nnw8  于 2021-06-04  发布在  Sqoop
关注(0)|答案(1)|浏览(681)

我试图运行sqoop export将配置单元表行加载到netezza表中。问题是我有一些列包含值数组,我在netezza中为这些列数据类型创建了ddl varchar(200),并运行sqoop作业,但由于坏行达到了限制,我收到了一个错误。下面是我的sqoop工作:
sqoop导出--选项文件--直接--连接jdbc:netezza用法://10.90.21.140:5480/analytics--username sat144--p--table analytics\u stage--export dir/home/dir1/analytics/data--fields以“~”结尾--input null string'\n'-input null non string'\n'-m1-最大错误数#0
我的netezza ddl如下:
创建表分析\u stage(id varchar(30),name varchar(60),dept nvarchar(99),dept \u id nvarchar(200));
我的配置单元表列值如下
第1行:20134(id)sat(名称)数据组(部门)[121103201212310](部门id)
有人能帮我吗?如果列在配置单元表中有负值和值数组,那么netezza中建议的数据类型是什么??

下面的sqoop错误日志

16/05/09 15:46:49 info mapreduce.job:map 50%reduce 0%16/05/09 15:46:55 info mapreduce.job:task id:attempt\u 146098638847\u 0849\u m\u000000\u 1,status:failed error:java.io.ioexception:org.netezza.error.nzsqlexception:error:external table:bad input rows count reached maxerrors limit

at org.apache.sqoop.mapreduce.db.netezza.NetezzaExternalTableExportMapper.run(NetezzaExternalTableExportMapper.java:255)
    at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:415)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657)
    at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)

原因:org.netezza.error.nzsqlexception:错误:外部表:错误输入行数达到maxerrors限制

v9tzhpje

v9tzhpje1#

导入/导出功能可从rdbms到hdfs,反之亦然。但是在使用hive、hbase和hcatalog时,我们只有一个导入选项。到目前为止,我们无法从配置单元、hbase和hcatalog导出数据。

相关问题