添加到mysql的新列在Hive中反映相同

时间:2017-03-06 22:27:26

标签: mysql hive sqoop

我今天在mysql中有4列和3行的表。我已将该数据直接导入为hive表。

表测试:

id name sal loc
1  sam  123 hyd
2  ram  234 teb
3  red  456 qer

现在我想在现有的mysql表中添加一个新列,并添加一个包含所有5列值的新行。新列的值 以前的行将为null。

表测试:

id name sal loc zip
1  sam  123 hyd null
2  ram  234 teb null
3  red  456 qer null
4  Tim  567 CA  1245

当我们执行sqoop增量追加时,我只获取旧列的值,而新行也会显示,但仅显示旧列。

增量附加后的hive表。

id name sal loc
1  sam  123 hyd
2  ram  234 teb
3  red  456 qer
4  Tim  567 CA

现在我希望hive表与mysql表一样精确

我们可以在运行sqoop增量附加时更新hive表吗?如果是的话

我们怎么能这样做?

如果没有什么是我用例的最佳解决方案

1 个答案:

答案 0 :(得分:0)

当您的ddl在步骤下改变使用时,没有州前向解决方案。

1你必须删除hive表并从hdfs的位置“hive.metastore.warehouse.dir / table”删除数据。

2您可以直接从Sqoop import下面的选项中再次创建表格。

--create-hive-table