我正在使用Hortonworks HDP Sandbox,并且我按照说明安装了Oraoop,但每当我运行Sqoop导入时,我都会收到消息“oracle.OraOopManagerFactory:Oracle和Hadoop的数据连接器被禁用。”。我不知道还有什么我需要做的才能拿起它。我已经验证了oraoop驱动程序在我的sqoop lib目录中。导入确实有效,但他们只是使用oracle驱动程序,我想使用Oraoop获得的一些功能。
这是我正在运行的命令:
sqoop-import --connect jdbc:oracle:thin:@<ip>:1521/sid --username myUser -P --query "select * from mytable where \$CONDITIONS" -split-by sequence_id -as-sequencefile --target-dir /user/hue/data/deactivatedsponsor
答案 0 :(得分:1)
如果指定'--query'参数代替'--table'parm,则不使用Oraoop连接器。 Sqoop Documentation
中提到了以下内容Data Connector for Oracle和Hadoop对具有以下属性的Sqoop Jobs负责:
Oracle相关
基于表格 - 使用表格参数且指定对象为表格的作业。
以下命令应使用Oraoop Connector。我已经包含了“--direct”选项,它向Sqoop表明应该使用Oraoop。
sqoop-import --connect jdbc:oracle:thin:@<ip>:1521/sid --direct --username myUser -P --table mytable -split-by sequence_id -as-sequencefile --target-dir /user/hue/data/deactivatedsponsor --columns <columns list> --where <where condition if needed>
答案 1 :(得分:0)
Oraoop连接器无法处理--query
工具,当您使用--query
时,它会自动调用sqoop
。
因此,不要使用--query
使用--table
进行导入。
希望这会有所帮助!!