首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置长时间运行的火花流作业

如何设置长时间运行的火花流作业
EN

Stack Overflow用户
提问于 2016-01-21 12:34:12
回答 1查看 509关注 0票数 0

在我的项目中,我有下面的场景;

  1. 我将继续从一个源获取数据流。
  2. 我需要每分钟计算一个键的均值和方差。
  3. 分钟结束后,我应该重新启动新的计算新分钟的值。

示例:

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星火流应用程序中设置此类作业。

EN

回答 1

Stack Overflow用户

发布于 2016-01-21 18:05:58

有两种选择:-

First -您可以将批处理持续时间设置为60秒,然后可以使用从流接收的数据来计算平均值和方差。

第二个-您可以使用DStream.window函数,例如,参见下面的伪代码:-

代码语言:javascript
复制
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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34923977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档