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

New columns added to mysql reflect the same in Hive

我今天 table 在 mysql 中有 4 列和 3 行。我已经将该数据直接导入为配置单元 table.

table 测试:

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

现在我想向现有的 mysql table 添加一个新列,并添加一个包含所有 5 列值的新行。新列的值 前几行将为空。

table 测试:

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 table 增量追加后。

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

现在我希望配置单元 table 与 mysql table

我们可以在 运行 sqoop 增量追加时更新配置单元 table 吗?如果是

我们该怎么做?

如果否,我的用例的最佳解决方案是什么

由于您的 ddl 在以下步骤中更改了使用,因此没有状态转发解决方案。

1 您必须删除配置单元 table 并从以下位置的 hdfs 中删除数据 "hive.metastore.warehouse.dir/table"。

2 您可以直接从 Sqoop 导入并沿着下面的选项重新创建 table。

--create-hive-table