火花从流中消耗 - 考虑更长时间的数据

时间:2017-04-03 04:42:08

标签: python-3.x apache-spark pyspark

我们正在运行一个使用kafka流的数据,进行一些分析并存储结果。

由于数据是在向kafka生成时使用的,因此我们想要获取

  

计算一整天,计算一小时,平均为整体   天

这种方法无法实现。我们应该采取什么方式来完成这样的要求

感谢任何帮助

谢谢和问候

Raaghu.K

1 个答案:

答案 0 :(得分:1)

您的流媒体作业不应计算每日点数/平均值。

方法1: 您可以将Kafka中的数据使用者存储到DB / HBase / HDFS等持久存储中,然后您可以运行Daily batch,它将为您计算所有统计数据,如每日计数或平均值。

方法2: 为了从流本身获取该信息,您需要使用累加器来保存记录数,总和。并按照计算平均值。

方法3: 使用流媒体窗口,但保持一天的数据没有任何意义。如果你需要5/10分钟的平均值,你可以使用它。

我认为第一种方法更可取,因为它可以让您更灵活地计算所需的所有分析。