问题标签 [sqoop2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
134 浏览

java - Sqoop java api 字符串输入参数

我想使用 Sqoop Java API 将 SequenceFile 的内容导出到 Oracle。在哪里可以看到 form.getInputString() 方法的参数?www 上的所有示例都代表命令行命令,Apache Sqoop 文档不包含必要的信息。

0 投票
1 回答
631 浏览

hadoop-yarn - 使用 yarn 在 Amazon EMR 上运行 sqoop2 服务器时出错

我正在尝试在 Amazon EMR 集群(AMI 版本 3.2.0/Hadoop 版本 2.4.0)上安装 sqoop 2(版本 1.99.3)。当我启动 sqoop 服务器时,我在 localhost.log 中看到了这个错误:

根据安装说明,这是我所做的。请注意,对于 EMR,$HADOOP_HOME 是 /home/hadoop。

  • 我从Apache下载了 sqoop-1.99.3-bin-hadoop200.tar.gz并将其解压到 $HADOOP_HOME/sqoop 中。
  • 在 catalina.properties 中的 common.loader 属性中添加了以下内容:/home/hadoop/share/hadoop/common/*.jar,/home/hadoop/share/hadoop/common/lib/*.jar,/home/hadoop /share/hadoop/mapreduce/*.jar,/home/hadoop/share/hadoop/yarn/*.jar
  • 在 sqoop.properties 中:
    • 我用 /home/hadoop/sqoop/log 替换了@LOGDIR@
    • 我用 /home/hadoop/sqoop 替换了@BASEDIR@
    • 对于 org.apache.sqoop.submission.engine.mapreduce.configuration.directory 属性,我将 /etc/hadoop/conf/ 替换为 /home/hadoop/conf/
  • 然后我启动了服务器:bin/sqoop.sh server start

据我从错误中可以看出,问题的根源是这一行:

此属性在 mapred-site.xml 中设置:

这就是我想要的。

我觉得我在 sqoop 的安装/配置中缺少一些参数设置,并且我尝试了其他一些东西(例如尝试 AMI 3.0.4 / Hadoop 2.2.0)但无法启动 sqoop服务器。

供参考。我已经阅读了Kyle Mulka 博客上的这篇文章,但它引用了不同版本的 Hadoop 和 sqoop,并且似乎无法深入了解我的配置。我已经阅读了该站点上的其他一些页面,但还没有找到引用我正在使用的 Hadoop 和 sqoop 版本的页面。而且我已经看到这个配置在 Cloudera 上运行(sqoop2 和 Hadoop 2 和 yarn),虽然还没有弄清楚这将如何转化为 EMR 安装。

0 投票
4 回答
12596 浏览

hadoop - 使用更新密钥的 Sqoop 导出

我必须将 HDFS 文件导出到 MySql 中。
假设我的 HDFS 文件是:

并说我的 Mysql 数据库架构是:

当我使用以下 Sqoop 命令插入时:

它工作正常并插入数据库。

但是,当我需要更新已经存在的记录时,我必须使用--update-key--columns.

现在,当我尝试使用以下命令更新表时:

我面临的问题是,数据没有按照中指定的方式更新到列中--columns

我做错什么了吗?

我们不能这样更新数据库吗?HDFS 文件应该在 Mysql 模式中仅用于更新?

有没有其他方法可以实现这一目标?

0 投票
1 回答
725 浏览

hive - 使用 sqoop 将 hive 数据导出到 oracle

我试图在 kerberos 集群上使用 sqoop 将 hive/hdfs 数据导出到 oracle,但无法提交作业,我不知道为什么。

我收到以下错误:

0 投票
2 回答
290 浏览

hdfs - 使用 Sqoop 将数据加载到 HDFS

我正在寻找将数据移动到 HDFS 系统上的方法,想知道 Apache Sqoop 是否可用于从外部 REST 服务中提取/提取数据?

0 投票
1 回答
713 浏览

sqoop - 无法启动 Sqoop 服务器

sqoop 的新手。如果解决方案太明显,请原谅我。

我在一台Linux机器上使用yum repo安装了sqoop,安装路径是/usr/lib/sqoop。

Sqoop 版本: Sqoop 1.4.5-cdh5.2.0

但是我找不到 sqoop.sh 文件来启动服务器。它在 /bin 下不可用。

请帮我解决一下这个。

0 投票
1 回答
195 浏览

import - Sqoop2 从 Oracle 导入作业到 HDFS(文本格式)将字符串“null”插入 HDFS

我正在尝试使用 Sqoop2 将数据从 Oracle DB 导入 HDFS。我意识到 sqoop2 正在插入一个字符串“null”值而不是非字符串 NULL 值。有没有替代方法可以避免这种情况发生?我知道在 sqoop1 中有一个替代方案,但我在 sqoop2 中寻找一个选项。

提前致谢

0 投票
2 回答
629 浏览

hadoop - Oozie 无法在 Sqoop 中找到 JDBC 驱动程序

参考之前提出的问题 Oozie + Sqoop: JDBC Driver Jar Location 1 but not able to find jar in HDFS /user/oozie/share/lib/sqoop location。

我还尝试将驱动程序 jar 放在我的 workFlow 应用程序库中。仍然发生未找到驱动程序错误。

0 投票
2 回答
742 浏览

hadoop - 在 sqoop 1.99.4 上设置 linkConfig.connectionString 时出错

我跟着https://sqoop.apache.org/docs/1.99.4/RESTAPI.html尝试了 sqoop2。但我收到错误“线程“主”org.apache.sqoop.common.SqoopException 中的异常:MODEL_011:输入不存在 - 输入名称:linkConfig.connectionString”行 linkConfig.getStringInput("linkConfig.connectionString").setValue ("jdbc:mysql://localhost/my"); 我从终端测试了 sqoop2、mysql、数据库等,并且工作正常。请帮忙。提前致谢。

这是我正在尝试的代码

0 投票
1 回答
1164 浏览

java - 从 Sqoop 到 Sap Hana 的连接失败

虽然用户名和密码正确,但我收到以下错误消息。如果您有任何解决方案,请告诉我。------------------ 在 SAP HANA - HIVE 表中 ------------------ 警告:/apps/opt/cloudera /parcels/CDH-5.2.0-1.cdh5.2.0.p0.36/bin/../lib/sqoop/../accumulo 不存在!Accumulo 导入将失败。请将 $ACCUMULO_HOME 设置为 Accumulo 安装的根目录。15/01/20 10:30:15 INFO sqoop.Sqoop:运行 Sqoop 版本:1.4.5-cdh5.2.0 15/01/20 10:30:15 WARN tool.BaseSqoopTool:在命令行上设置密码是不安全。考虑改用 -P。15/01/20 10:30:15 INFO tool.BaseSqoopTool:使用 Hive 特定的分隔符进行输出。您可以覆盖 15/01/20 10:30:15 INFO tool.BaseSqoopTool:使用 --fields-terminated-by 等分隔符。15/01/20 10:30:15 INFO teradata.TeradataManagerFactory:在版本 1.2c5 15/01/20 10:30:15 上为 'Cloudera Connector Powered by Teradata' 加载连接器工厂 WARN sqoop.ConnFactory:参数 --driver 设置为显式驱动程序,但未设置适当的连接管理器(通过--连接管理器)。Sqoop 将退回到 org.apache.sqoop.manager.GenericJdbcManager。请明确指定下次应该使用哪个连接管理器。15/01/20 10:30:15 INFO manager.SqlManager:使用默认 fetchSize 1000 15/01/20 10:30:15 INFO tool.CodeGenTool:开始代码生成 sqoop.manager.GenericJdbcManager。请明确指定下次应该使用哪个连接管理器。15/01/20 10:30:15 INFO manager.SqlManager:使用默认 fetchSize 1000 15/01/20 10:30:15 INFO tool.CodeGenTool:开始代码生成 sqoop.manager.GenericJdbcManager。请明确指定下次应该使用哪个连接管理器。15/01/20 10:30:15 INFO manager.SqlManager:使用默认 fetchSize 1000 15/01/20 10:30:15 INFO tool.CodeGenTool:开始代码生成 15/01/20 10:30:16 错误 manager.SqlManager:错误执行语句:com.sap.db.jdbc.exceptions.JDBCDriverException:SAP DBTech JDBC:[414]:用户被迫更改密码:更改密码需要用户 CH1HAHSGPOC com.sap.db.jdbc.exceptions.JDBCDriverException:SAP DBTech JDBC:[414]:用户被迫更改密码:在 com.sap.db.jdbc.exceptions.SQLExceptionSapDB.createException( SQLExceptionSapDB.java:334) 在 com.sap.db.jdbc.exceptions.SQLExceptionSapDB.generateDatabaseException(SQLExceptionSapDB.java:174) 在 com.sap.db.jdbc.packet.ReplyPacket.buildExceptionChain(ReplyPacket.java:102)