我有我的scala代码用于KDD杯数据集的异常检测。 代码位于https://github.com/prashantprakash/KDDDataResearch/blob/master/Code/approach1Plus2/src/main/scala/PCA.scala
我想通过使用来自MlLib的StreamingKMeans算法尝试一种新技术,并且只要上面代码中的第288行为真,就更新我的StreamingKmeans模型" if(dist< threshold){&#34 ;;即当测试点被归类为正常时,使用新的"正常数据点"更新KMeans模型。
我看到StreamingKmeans以DStreams的形式获取数据。 "请帮助将现有的RDD转换为Dstreams。"
我找到了一个链接http://apache-spark-user-list.1001560.n3.nabble.com/RDD-to-DStream-td11145.html,但它没有多大帮助。
如果有更好的设计来解决问题,请提供建议。
答案 0 :(得分:1)
据我所知,RDD无法转换为DStream,因为RDD是数据的集合,而DStream是指传入数据的概念。
如果您想使用StreamingKMeans,请将您组建的数据转换为RDD,然后将其转换为DStream,可能使用KafkaUtils.createDirectStream
或ssc.textFileStream
。
希望这有帮助!