sqoop和hive的问题

时间:2017-01-12 17:44:15

标签: hive sqoop

我们面临以下问题详情如下,请分享您的意见。

1)在sqoop

中发出--validate选项

如果我们运行sqoop命令而不为其创建作业,则验证有效。但是如果我们首先创建一个作业,使用validate选项,验证似乎不起作用。

适用于

sqoop import --connect“数据库连接”--username $ USER --password-file $ File_Path --warehouse-dir $ TGT_DIR --as- textfile --fields-terminated by'|' - lines-teriminated-by'\ n' - 表格emp_table -m 1 --outdir $ HOME / javafiles --validate

不适用于

sqoop job --create Job_import_emp import --connect“DB connection”--username $ USER --password-file $ File_Path --warehouse-dir $ TGT_DIR --as-textfile --fields-terminated by'|' - lines-teriminated-by'\ n' - 表格emp_table -m 1 --outdir $ HOME / javafiles --validate

2)Hive导入问题

如果我们是第一次在hive中导入数据,则必须创建hive表(hive内部),因此我们在sqoop命令中保留“--create-hive-table”。

即使你保留“--create-hive-table”选项,如果表已经存在,有没有办法在导入时跳过hive中的create table步骤。

由于 谢赫

1 个答案:

答案 0 :(得分:0)

Sqoop仅允许--validatesqoop import命令使用sqoop export选项。

从官方Sqoop User guide开始,验证具有这些限制,

  • all-tables选项
  • 自由格式查询选项
  • 导入Hive或HBase表的数据
  • 使用--where参数
  • 导入

不,如果设置了--create-hive-table选项,则不能跳过表检查,如果目标表存在,则作业将失败。