sqoop with query子句

sd2nnvve  于 2021-06-03  发布在  Sqoop
关注(0)|答案(2)|浏览(345)

我需要将一些数据从oracle移动到hive,我发现sqoop可能是一个有用的工具。问题是我需要处理一个查询并将结果插入目标数据库的表中。
oracle函数结果-->hivedb.mytable
我发现这个命令:

sqoop import --connect jdbc:oracle:thin:@******:1522/**
--username myUsername --password pwd --query '...' 
--hive-import --split-by "myID" --hive-table "hive-table" --hive-database "hive-database"

但我需要指定一个 --target-dir 强制性的,我在hdfs中没有写权限。
只有当我使用--query时才是这样,因为如果我使用 --table , --target-dir 不需要。
谁知道有没有办法避免这种情况 "--target-dir" 属性是否使用查询?

kpbpu008

kpbpu0081#

为了导入数据,您需要在hdfs中具有写访问权限。大多数情况下,hdfs:///tmp/目录将对所有用户具有写访问权限。将其用作目标目录并运行命令。

sycxhyv7

sycxhyv72#

除了hive表之外,还可以使用hcatalog表,但必须给出目标目录的位置。

相关问题