【发布时间】:2017-11-13 19:10:06
【问题描述】:
我正在尝试使用 Sqoop 将数据从 MySQL 表导入 Hive。据我了解,有两种方法可以做到这一点。
将数据导入 HDFS,然后在 Hive 中创建外部表并将数据加载到该表中。
在运行 Sqoop 查询时使用
create-hive-table在 Hive 中创建一个新表并将数据直接加载到该表中。我正在尝试这样做,但由于某种原因无法这样做
这是我的代码
sqoop import \
--connect jdbc:mysql://localhost/EMPLOYEE \
--username root \
--password root \
--table emp \
--m 1 \
--hive-database sqoopimport \
--hive-table sqoopimport.employee \
--create-hive-table \
--fields-terminated-by ',';
我也尝试使用--hive-import,但出现错误。
当我运行上述查询时,作业成功但没有在 hive 中创建表,并且数据存储在\user\HDFS\emp\ 位置,\HDFS\emp 在作业期间创建。
PS:我也找不到任何理由将--m 1 与 Sqoop 一起使用。它存在于所有查询中。
【问题讨论】:
标签: mysql hadoop hive hdfs sqoop