【问题标题】:Non associative aggregations in apache spark streamingapache spark流中的非关联聚合
【发布时间】:2015-11-07 17:41:21
【问题描述】:

我正在尝试通过 apache spark 流式在 Java 中构建一个实用程序层,用户可以在一段时间内聚合数据(使用 spark 中的窗口函数),但似乎所有可用选项都需要关联函数(采用两个参数)。然而,对于一些相当常见的用例,例如在一小时内平均温度传感器值等,使用 spark API 似乎是不可能的。

有没有其他方法可以实现这种功能?我正在考虑实现重复的交互式查询来实现这一点,但它会太慢。

【问题讨论】:

  • avg = sum/count 其中 sum 和 count 是关联的。关联性使您能够并行化操作。您需要在像 Spark 这样的并行分布式框架中使用它。您正在考虑哪些案例?
  • 我们的用例是建立一个自动警报系统,如果平均传感器数据(超过一小时)超过阈值,我们会发送电子邮件。

标签: java hadoop apache-spark spark-streaming


【解决方案1】:

统计聚合(平均值、方差)实际上是关联的,可以在线计算。请参阅 here 了解执行此操作的良好数字方法。

就参数的数量而言,请记住您在参数中输入的类型是您自己选择的。您可以使用元组在其中一个中嵌套多个参数。

最后,您还可以使用 updateStateByKey 之类的状态信息。

【讨论】:

    猜你喜欢
    • 2018-01-06
    • 1970-01-01
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 2012-07-01
    相关资源
    最近更新 更多