tes*_*k03 5 apache-spark spark-streaming apache-spark-sql
我试图从聚合原理的角度理解火花流。Spark DF 基于小批量,并且计算是在特定时间窗口内的小批量上完成的。
假设我们的数据如下 -
Window_period_1[Data1, Data2, Data3]
Window_period_2[Data4, Data5, Data6]
..
Run Code Online (Sandbox Code Playgroud)
然后首先计算 Window_period_1,然后计算 Window_period_2。如果我需要使用新的传入数据以及历史数据,比如说 Window_period_new 与 Window_period_1 和 Window_period_2 中的数据之间的 groupby 函数,我该怎么做?
查看同一事物的另一种方式是,如果我有一个已经创建了一些数据框的要求 -
df1、df2、df3 和我需要运行一个聚合,其中涉及来自 df1、df2、df3 和 Window_period_1、Window_period_2 的数据以及所有新传入的流数据
我该怎么做呢?
Spark 允许您在 rdd 中存储状态(带有检查点)。因此,即使重新启动后,作业也会从检查点恢复其状态并继续流式传输。
然而,我们面临着检查点的性能问题(特别是在恢复状态之后),因此值得使用一些外部源(例如 hbase)来实现 storint 状态
归档时间: |
|
查看次数: |
838 次 |
最近记录: |