【发布时间】:2016-11-25 10:19:11
【问题描述】:
您好,我正在计划一个部署,Spark 可以完成处理来自 Kafka 的传入数据的繁重工作,以应用 StreamingKMeans 进行异常值检测。
然而,从 Kafka 主题传入的数据来自各种来源,定义了需要不同 KMeans 模型(状态)的不同数据结构。因此,传入离散 RDD 中的每个条目可能都应该通过其自己的 KMeans 模型,基于“关键”字段(基本上我需要单个事件处理)。
这种类型的处理可以用 Spark 实现吗?如果是,它最终是否利用了 Spark 并行性?我是 Spark 和 Scala 的新手,感觉自己缺少了一些东西。
提前致谢。
更新:
我目前正在研究似乎可以解决此问题的 mapWithState 运算符。问题是:我可以直接将 StreamingKmeans 模型保存到状态中吗?否则我将不得不保存质心并在状态更新函数中实例化一个新模型,这似乎很昂贵。
【问题讨论】:
标签: scala apache-spark spark-streaming apache-spark-mllib