架构更改后的数据框如何插入到Hive表中

时间:2020-06-16 15:17:46

标签: dataframe pyspark hive schema pyspark-dataframes

将数据帧写入Hive表时遇到问题。

df_inp有4列:

|dim1|dim2|  byvar|value1|
| 101| 102|MTD0001|     1|
| 201| 202|MTD0002|     2|
| 301| 302|MTD0003|     3|

使用以下命令将上述数据框插入表格:

df_inp.write.mode("overwrite").saveAsTable(db_name.table_name)

现在,当我更改数据框架构时

带有5列的df_inp:

|dim1|dim2|  byvar|value1|value2|
| 101| 102|MTD0001|     1|    10|
| 201| 202|MTD0002|     2|    12|
| 301| 302|MTD0003|     3|    13|

现在,当我将相同的数据帧插入到现有表中(带有覆盖)时,由于架构的更改,插入操作将失败?

我们需要如何纠正此解决方案。.alter table机制必须如何处理? 我将在其他情况下使用数据框,同时减少列数。假设df_inp是否有3列?

0 个答案:

没有答案