我正在使用 DB Connect 9.1.9。我的集群版本是单节点的 9.1LTS(用于测试目的)。
我的数据作为增量表存储在 S3 上。
运行以下:
df = spark.sql("select * from <table_name> where runDate >= '2022-01-10 14:00:00' and runDate <= '2022-01-10 15:00:00'")
当我使用 DB Connect 运行它时,我得到:31。当我在 Databricks 工作区上运行它时:462。
当然你不能检查那个数字,我只是想找出我们为什么会有差异。
如果我删除 runDate 上的条件,我在两个平台上都有很好的结果。所以我推断这是“runDate”错误,但我找不到原因。
架构:
StructType(List(StructField(id,StringType,False),
StructField(runDate,TimestampType,true)))
我在两个平台上也有相同的解释计划。
我是否错过了有关时间戳使用的某些内容?
更新 1:有趣的是,当我将 count()spark.sql("SELECT count(*) ...")
直接放入其中时,我仍然有 31 行。这可能是 db-connect 将查询转换为集群的方式。