【发布时间】: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 中的表已创建但为空... 我不明白问题出在哪里。我也没有任何错误信息...
你有什么想法吗?
编辑:我设法加载我的表,首先,执行创建没有数据的表的第二个查询,然后删除空的文件夹并执行正确提取数据的第一个查询......但我会喜欢在一个查询中做同样的事情......
【问题讨论】: