You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PySpark中对托管Delta表执行Time-travel操作

Databricks Delta表Python实现时间旅行操作

根据Databricks官方规范说明:

在Databricks中创建的所有表默认都是Delta表。

用户通过以下代码创建表后:

df.write.saveAsTable("table_name")

可以通过SQL API执行时间旅行操作:

SELECT * FROM table_name VERSION AS OF 0

Python实现时间旅行的几种方式

  • 使用versionAsOf链式调用:这就是你提到的写法,直接对表对象调用方法指定版本号:

    # 读取mytab2表的版本3数据
    df = spark.table("mytab2").versionAsOf(3)
    
  • 通过spark.read指定版本:在读取时通过option参数指定版本,适配更灵活的读取场景:

    df = spark.read.format("delta").option("versionAsOf", 3).table("mytab2")
    
  • 按时间戳旅行:如果不清楚具体版本号,也可以指定历史时间戳来获取对应时刻的数据:

    # 链式调用方式
    df = spark.table("mytab2").timestampAsOf("2024-05-20 12:00:00")
    
    # 读取时指定时间戳
    df = spark.read.format("delta").option("timestampAsOf", "2024-05-20 12:00:00").table("mytab2")
    

内容的提问来源于stack exchange,提问作者user3579222

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 12:15:37