Apache spark 加载两次以运行火花窗正常

Apache spark 加载两次以运行火花窗正常,apache-spark,pyspark,Apache Spark,Pyspark,我正在使用spark 1.5.1,我不知道这是一个bug还是一个特性 我正在尝试使用窗口对数据帧列求和。正常代码应如下所示: from pyspark.sql.window import Window from pyspark.sql import functions as F df = sqlContext.read.parquet('/tmp/my_file.parquet') w = Window().partitionBy('id').orderBy('timestamp').row

我正在使用spark 1.5.1,我不知道这是一个bug还是一个特性

我正在尝试使用窗口对数据帧列求和。正常代码应如下所示:

from pyspark.sql.window import Window
from pyspark.sql import functions as F

df = sqlContext.read.parquet('/tmp/my_file.parquet')

w = Window().partitionBy('id').orderBy('timestamp').rowsBetween(0, 5)
df.select(F.sum(df.v1).over(w)).show()
结果:

这个结果是错误的(我认为这是垃圾)。但是,如果我“加载”两次

from pyspark.sql.window import Window
from pyspark.sql import functions as F

df = sqlContext.read.parquet('/tmp/my_file.parquet')
df = sqlContext.read.parquet('/tmp/my_file.parquet') # NEW LOAD

w = Window().partitionBy('id').orderBy('timestamp').rowsBetween(0, 5)
df.select(F.sum(df.v1).over(w)).show()
新的结果是正确的:


发生了什么?

这似乎是Spark 1.5.1解决的错误。是这只虫子的jira追踪者