sparksql1.5dataframesaveastable如何添加配置单元表属性

rkttyhzu  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(280)

我正在Hive上运行sparksql。我需要在创建新的配置单元表时添加auto.purge表属性。我在调用saveastable方法时尝试了以下代码来添加选项:

inputDF.write.option("auto.purge" -> "true").saveAsTable(hiveTableName)

上面的代码行在with serdeproperties of table下添加了一个属性。我需要在hiveddl的tblproperty部分下添加这个属性。

t5zmwmid

t5zmwmid1#

最后我找到了一个解决方案,我不确定这是否是最好的解决方案。不幸的是,spark 1.5 sql saveastable方法不支持将表属性作为输入。他们正在创建新的tablepropertiesMap,然后再创建配置单元表。查看以下代码:https://github.com/apache/spark/blob/v1.5.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/hivemetastorecatalog.scala
要向现有配置单元表添加表属性,请使用alter table命令。

ALTER TABLE table_name SET TBLPROPERTIES ('auto.purge'='true');

上面的命令将向配置单元元存储添加表属性。若要删除加密区域内的现有表,请在drop命令之前运行以上命令。

相关问题