Spark 3.0.x中的DataSource API中的SaveMode

问题描述

我正在尝试将我的同事编写的自定义spark连接器迁移到spark 3.0。 API发生了巨大变化(总体而言,IMH更好)。我遇到的一个问题是SaveMode,它用于写入数据帧。过去,它作为createWriter特征的抽象方法WriteSupport的输入参数之一提供。但是WriteSupport已更改为SupportsWrite,等效方法(如果可以调用它)是newWriteBuilder,它得到类型为LogicalWriteInfo的参数,但没有类型SaveMode的成员。

我也研究了WriteBuilderBatchWriteDataWriterFactoryDataWriter[T]无济于事。不幸的是,我找不到有关此主题的任何文档。任何帮助将不胜感激。

谢谢

解决方法

SaveMode正在按照this问题发行。相反,添加了可以完成相同功能的新特征:

SupportsDynamicOverwrite

SupportsOverwrite

SupportsTruncate