【问题标题】:data disapear import sqoop hive oracle数据消失导入 sqoop hive oracle
【发布时间】:2015-06-16 07:38:32
【问题描述】:

我想连接到数据库并将数据从 oracle 导入文件或 HIVE。 但是现在,我想在 oracle 上使用 sqoop 将查询中的数据导入 Hive。

我以前使用过以下内容: sqoop import --connect 'jdbc:oracle:thin:@server1:1521:ICIS' -P -- username JAPHONIE --query 'SELECT * FROM CONTRACTS INNER JOIN CONTRACT_VERSIONS ON CV_CON_NUMBER = CON_NUMBER WHERE $CONDITIONS' --target-dir BOUH --split-by CON_NUMBER --where '1=1'

这个在我的文件夹BOUH中创建我的数据,这一点没有问题。

但是当我使用以下内容时: sqoop import --connect 'jdbc:oracle:thin:@server1:1521:ICIS' -P --username JAPHONIE --query 'SELECT * FROM CONTRACTS INNER JOIN CONTRACT_VERSIONS ON CV_CON_NUMBER = CON_NUMBER WHERE $CONDITIONS' --target-dir BOUH --split-by CON_NUMBER --where '1=1' --hive-import --hive-table BOUH

我的 BOUH 文件夹仅包含 _SUCCESS,没有数据,并且 HIVE 中的表已创建但为空... 我不明白问题出在哪里。我也没有任何错误信息...

你有什么想法吗?

编辑:我设法加载我的表,首先,执行创建没有数据的表的第二个查询,然后删除空的文件夹并执行正确提取数据的第一个查询......但我会喜欢在一个查询中做同样的事情......

【问题讨论】:

    标签: oracle hive sqoop


    【解决方案1】:

    您导入的数据将保存在/user/hive/warehouse下,因为它是一个内部hive表,它不会保存在您在--target-dir中提到的BOUH文件夹中。您的脚本是正确的,您应该能够看到 hive 表中的数据,正如您所说的您无法看到数据,请查看 /user/hive/warehouse 文件夹一次。不过如果看不到数据,请在此处粘贴 sqoop 日志。

    【讨论】:

    • 这在我的环境中可能有所不同......我目前使用的是 hortonworks 沙盒 vm。我对不同的查询使用了相同的设置,它工作得非常好,我的配置单元表和我的数据都在我的“bouh”文件夹下......但是使用这个查询,它不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    • 2017-02-03
    • 1970-01-01
    • 2019-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多