我想知道为什么我使用sqoop从sqlserver导入的hive db中的表正在消失

时间:2018-01-04 05:01:03

标签: hadoop hive sqoop

所以我尝试使用以下命令将所有表导入hive db,即hdfs上的 user / hive / warehouse /...

formatter_class=None

在testdatabase中我有3个表,当mapreduce运行时,输出成功, 即,mapreduce作业已完成100%但在hive db上找不到该文件。

3 个答案:

答案 0 :(得分:0)

它基本上被最后一个表覆盖,尝试删除目录路径末尾的正斜杠。对于测试,我建议不要使用仓库目录,使用像'/ tmp / sqoop / allTables'这样的东西

答案 1 :(得分:0)

还有另一种方式 1.创建指向位置的配置单元数据“targetLocation” 2.使用以前创建的数据库在sqoop导入中创建hcatalog表。 3.使用目标目录导入选项指向该targetLocation。

答案 2 :(得分:0)

  

您不需要定义仓库目录。只需定义hive数据库,它就会自动找到工作目录。

sqoop import-all-tables --connect "jdbc:sqlserver://xxx.xxx.x.xxx:xxxx;databaseName=master" --username xxxxxx --password xxxxxxx --hive-import --create-hive-table  --hive-database test -m 1
  它会像火箭一样运行。

希望它适合你......