火花流窗口可以有多大?

Kra*_* Li 6 stream apache-spark spark-streaming

我有一些数据流需要计算。我正在考虑使用火花流来完成这项工作。但是有一件事我不确定并且感到担心。

我的要求是这样的:

数据每 5 分钟以 CSV 文件的形式出现。我需要最近 5 分钟、1 小时和 1 天的数据报告。所以如果我设置一个火花流来做这个计算。我需要间隔为 5 分钟。我还需要设置两个窗口 1 小时和 1 天。

每5分钟就会有1GB的数据进来。所以一小时的窗口会计算出12GB(60/5)的数据,一天的窗口会计算出288GB(24*60/5)的数据。

我对火花没有太多经验。所以这让我很担心。

  1. 火花能处理这么大的窗户吗?

  2. 计算这些 288 GB 数据需要多少 RAM?超过 288 GB 的内存?(我知道这可能取决于我的磁盘 I/O、CPU 和计算模式。但我只是想要一些基于经验的估计答案)

  3. 如果对一天/一小时数据的计算在流中过于昂贵。你有什么更好的建议吗?