Spark1.6 saveAsTable 函数使用 Overwrite存储模式设置分区表的 partition 会造成全表覆盖的问题
0.说明
在实际使用中有一个需求是通过 Spark 对分区表进行增量分区的覆盖操作,Spark 1.6 的 saveAsTable 函数使用 Overwrite 存储模式设置分区表的 partition 会造成全表覆盖的问题 ,使用Append 存储模式会造成同一分区数据多次写入并不能满足我们的需求。在网上查了一下原因,这是个存在很久的问题,是 Spark 的版本的问题,在 Spark 2.3 之后已经修复了这个问题。
参考链接
1.解决方法
除了高赞回答之外,下面这个回答更适合我的应用情景,参考了他这边的解决问题的思路,所以最后通过手工删除对应分区的内容,在执行增量分区的写入操作,适合的才是最好的。
且将新火试新茶,诗酒趁年华。