使用函数时是否有中间计算优化。窗口[Spark]

时间:2017-12-28 13:10:40

标签: java apache-spark apache-spark-sql spark-dataframe

我使用functions.window使用Spark和Java创建滑动窗口计算。示例代码:

Column slidingWindow = functions.window(singleIPPerRow.col("timestamp"), "3 hours", "1 seconds");
Dataset<Row> aggregatedResultsForWindow = singleIPPerRow.groupBy(slidingWindow, singleIPPerRow.col("area")).count();

数据如下所示:

+----------+-------+------+
| timestamp|   area|events|
+----------+-------+------+
|1514452990|domain1|    41|
|1514452991|domain1|    42|
|1514452991|domain1|    50|
|1514452993|domain2|    53|
|1514452994|domain2|    54|
|1514452994|domain3|    54|
|1514452993|domain1|    35|
+----------+-------+------+

实际上每个时间戳都有很多的事件,并且还会注意步骤和窗口大小之间的比率。

我的问题是计算计算的时间是多少?我的意思是结果中step/window个不同的行使用每个时间戳区域计数。 Spark会保存中间结果吗?让一对夫妇的每一次计算都计算一次,还是计算每对夫妇的结果step/window

0 个答案:

没有答案