【发布时间】:2018-03-10 12:17:15
【问题描述】:
我想知道“覆盖”到底是做什么的。假设我有一个表,在表“tb1”中有以下记录(抱歉表的错误表示)
司机 vin 制作模型
martin abc ford escape
john abd toyota camry
amy abe chevrolet malibu
carlos abf honda civic
现在我有以下具有相同列但具有以下行/数据的数据框(mydf)
martin abf toyota corolla
carlos abg nissan versa
上面的dataframe用overwrite模式保存到“tb1”后,dataframe会完全删除“tb1”的内容,写入mydf的数据(两条记录以上)吗?
但是,我希望覆盖模式仅覆盖那些“驱动程序”列具有相同值的行。在这种情况下,“tb1”中的 4 条记录中,mydf 将仅覆盖 2 条以上的记录,结果表如下-
司机 vin 制作模型
martin abf toyota corolla
john abd toyota camry
amy abe chevrolet malibu
carlos abg nissan versa
我可以使用覆盖模式实现此功能吗?
mydf.write.mode(SaveMode.Overwrite).saveAsTable("tb1")
【问题讨论】:
标签: scala apache-spark