在我的项目中,我有下面的场景;
示例:
10:00计算和输出
10 :00键=1,平均值=10,方差=2
10 :00键=N,平均值=10,方差=2
10:00:01计算和输出
10:00键=1,平均值= 11,方差=2
10:00键=N,平均值= 12,方差=2
10:00:01数据与10:00没有依赖关系
如何在单个java星火流应用程序中设置此类作业。
发布于 2016-01-21 18:05:58
有两种选择:-
First -您可以将批处理持续时间设置为60秒,然后可以使用从流接收的数据来计算平均值和方差。
第二个-您可以使用DStream.window函数,例如,参见下面的伪代码:-
val streamCtx = new StreamingContext(sparkCtx, Seconds(10))
//Assuming that you are using Flume and creating a Polling Stream
val flumeStream = FlumeUtils.createPollingStream(streamCtx, <Array[InetSocketAddress]>, <StorageLevel>, 1000, 1)
val windowStream = flumeStream.window(Seconds(60), Seconds(60))
//Now here process windowStream and calculate means and variance of each Key.有关更多信息,请参阅DStream API
https://stackoverflow.com/questions/34923977
复制相似问题