首页 文章

sqoop将数据从Teradata传输到HDFS

提问于
浏览
1

sqoop将数据从Teradata传输到HDFS:获取如下错误:-bash-4.1 $ sqoop import --connection-manager com.cloudera.sqoop.manager.DefaultManagerFactory --driver com.teradata.jdbc.TeraDriver \

--connect jdbc:teradata://dwsoat.dws.company.co.uk/DATABASE=TS_72258_BASELDB \ --username userid -P --table ADDRESS --num-mappers 3 \ --target-dir / user / nathalok / ADDRESS警告:/apps/cloudera/parcels/CDH-5.1.3-1.cdh5.1.3.p0.12/bin/../lib/sqoop/../accumulo不存在! Accumulo进口将失败 . 请将$ ACCUMULO_HOME设置为Accumulo安装的根目录 . 14/10/29 14:00:14 INFO sqoop.Sqoop:运行Sqoop版本:1.4.4-cdh5.1.3 14/10/29 14:00:14 WARN tool.BaseSqoopTool:在命令行设置密码是不安全的 . 考虑使用-P代替 . 14/10/29 14:00:14错误sqoop.ConnFactory:Sqoop无法正确创建连接管理器 . 有些连接器支持显式--driver,有些则不支持 . 请尝试指定--driver或将其保留 . 14/10/29 14:00:14 ERROR tool.BaseSqoopTool:创建数据库管理器时出错:java.io.IOException:java.lang.NoSuchMethodException:com.cloudera.sqoop.manager.DefaultManagerFactory . (java.lang.String, org.apache.sqoop(orn.apache) .tool.ImportTool.init(ImportTool.java:84)atg.apache.sqoop.tool.ImportTool.run(ImportTool.java:494)org.apache.sqoop.Sqoop.run(Sqoop.java:147)at at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)org.apache.sqoop.Sqoop.runTool(Sqoop.java: 222)org.apache.sqoop.Sqoop.runTool(Sqoop.java:231)at org.apache.sqoop.Sqoop.main(Sqoop.java:240)引起:java.lang.NoSuchMethodException:com.cloudera.sqoop java的java.lang.Class.getConstructor0(Class.java:2810)中的.manager.DefaultManagerFactory . (java.lang.String,com.cloudera.sqoop.SqoopOptions) .lang.Class.getDeclaredConstructor(Class.java:2053)at org.apache.sqoop.ConnFactory.getManager(ConnFactory.java:151)... 9更多

-bash-4.1 $

任何帮助将不胜感激 .

1 回答

  • 5

    要使用Cloudera发行版使Teradata正常工作,您需要执行以下操作:

    • 在/ var / lib / sqoop中安装Teradata JDBC jars . 对我来说,这些是terajdbc4.jar和tdgssconfig.jar .

    • 安装Cloudera Connector Powered by Teradata或安装在文件系统某处的Cloudera Connector for Teradata(我更喜欢/ var / lib / sqoop) .

    • 在/etc/sqoop/conf/managers.d/中,创建一个文件(任何名称)并添加 com.cloudera.connector.teradata.TeradataManagerFactory=<location of connector jar> . 例如,我有/etc/sqoop/conf/managers.d/teradata => com.cloudera.connector.teradata.TeradataManagerFactory=/var/lib/sqoop/sqoop-connector-teradata-1.2c5.jar .

    有不同的方法来安装Teradata connector . 例如,使用Cloudera Manager可能更容易 .

    如果您仍然遇到问题,请尝试联系sqoop mailing list .

相关问题