Spark dataframe saveAsTable 不截断来自 Hive 的数据 table

Spark dataframe saveAsTable not truncating data from Hive table

我正在使用 Spark 2.1.0 并使用 Java SparkSession 到 运行 我的 SparkSQL。 我正在尝试使用覆盖模式将名为 'ds'Dataset<Row> 保存到名为 schema_name.tbl_name 的 Hive table 中。 但是当我运行宁下面的语句

ds.write().mode(SaveMode.Overwrite)
.option("header","true")
.option("truncate", "true")
.saveAsTable(ConfigurationUtils.getProperty(ConfigurationUtils.HIVE_TABLE_NAME));

table 在第一个 运行 之后被删除。 当我重新 运行 时,table 是用加载的数据创建的。

即使使用 t运行cate 选项也没有解决我的问题。 saveAsTable 是否考虑 t运行cating 数据而不是 dropping/creating table?如果是这样,在 Java 中正确的做法是什么?

这是我的问题对 Apache JIRA 的引用。好像到现在还没解决

https://issues.apache.org/jira/browse/SPARK-21036