使用sqoop将块导入到同一个表中

时间:2016-06-21 19:58:00

标签: hadoop hive sqoop

我非常喜欢蜂巢和sqoop,因为我的公司刚刚采用它们。因此,我尝试将数据从sql数据库导入hdfs/hive。但是,我们仍然只有几个集群,所以我担心一次导入所有数据(总共1900万条记录)。我已经疯狂地搜索了一个解决方案,但我发现的唯一接近我正在寻找的是使用增量导入。但是,这不是解决方案,因为它导入比第一次导入更新的所有内容,并且我有2年的历史数据。

因此,有没有办法追加到我缺少的表(例如,我可以一次将一个月导入到同一个表中?

这是我用来将第一块数据插入表中的初始命令。

sqoop  import --driver com.microsoft.sqlserver.jdbc.SQLServerDriver \
--connect jdbc:sqlserver://******omitted******* \
--username **** \
--password *******  \
--hive-table <tablename> \
--m 1 \
--delete-target-dir \
--target-dir /apps/hive/warehouse/<dir to table> \
--hive-drop-import-delims \
--hive-import --query "select * from  <old sql table> where record_id   
<='000000001433106' and \$CONDITIONS" 

感谢您的帮助。

0 个答案:

没有答案