2016-06-29 2 views
0

KDD 컵 데이터 세트의 이상 검출을위한 스칼라 코드가 있습니다. 코드는 내가 "{경우 (DIST < 임계 값)"위의 코드 라인 288에 해당하는 때마다 내 StreamingKmeans 모델을 MlLib에서 StreamingKMeans 알고리즘을 사용하여 새로운 기술을 시도하고 업데이트하고 싶었다 https://github.com/prashantprakash/KDDDataResearch/blob/master/Code/approach1Plus2/src/main/scala/PCA.scalaRDD를 DStream으로 변환하여 Apache Spark에서 StreamingKMeans 알고리즘 적용 MlLib

에있다; 즉, 테스트 포인트가 정상으로 분류되면 KMeans 모델을 새로운 "정상 데이터 포인트"로 업데이트하십시오.

나는 StreamingKmeans가 DStream의 형태로 데이터를 가져 오는 것을 봅니다. "기존 RDD를 Dstream으로 변환하는 데 도움을주십시오."

링크가 http://apache-spark-user-list.1001560.n3.nabble.com/RDD-to-DStream-td11145.html인데 많은 도움이되지 않았습니다.

문제를 해결할 수있는 더 나은 디자인이 있으면 조언을 구하십시오.

답변

0

내가 아는 한 RDD는 데이터 집합이며 DStream은 들어오는 데이터를 참조하기 때문에 RDD는 DStream으로 변환 될 수 없습니다.

StreamingKMeans를 사용하려면 작성한 데이터를 RDD로 가져 와서 KafkaUtils.createDirectStream 또는 ssc.textFileStream을 사용하여 DStream으로 변환하십시오.

희망이 도움이됩니다.

+0

"queueStream"메서드를 사용하여 RDD를 DStream으로 변환 할 수 있습니다. [link] (https://github.com/Rohithyeravothula/Spark-Examples/blob/master/src/main/scala/RDDtoDStreamExample.scala) 간단한 예제 (21 행에서 23 행까지) –

관련 문제