【发布时间】:2020-12-02 07:43:08
【问题描述】:
需要一种优雅的方式将 Delta Lake 回滚到以前的版本。
我目前的做法如下:
import io.delta.tables._
val deltaTable = DeltaTable.forPath(spark, testFolder)
spark.read.format("delta")
.option("versionAsOf", 0)
.load(testFolder)
.write
.mode("overwrite")
.format("delta")
.save(testFolder)
这很丑陋,因为需要重写整个数据集。似乎一些元更新就足够了,不需要数据 I/O。有人知道更好的方法吗?
【问题讨论】:
-
我同意这不是一个理想的解决方案,但考虑到用分区覆盖大型数据集可能会很昂贵,这个简单的解决方案可能会有所帮助。
标签: apache-spark rollback databricks delta-lake