2017-09-08 3 views
0

Spark mlストリーミングpredictOnValues結果を保存する方法は?私は次のコードしている

StreamingLinearRegressionWithSGD regressionWithSGD = 
     new StreamingLinearRegressionWithSGD() 
       .setInitialWeights(Vectors.zeros(featuresNumber)); 

JavaDStream<LabeledPoint> trainingData = streamingContext.textFileStream(model.getTrainPath()).map(LabeledPoint::parse).cache(); 
JavaDStream<LabeledPoint> testData = streamingContext.textFileStream(model.getPredictPath()).map(LabeledPoint::parse); 
regressionWithSGD.trainOn(trainingData); 
regressionWithSGD.predictOnValues(testData.mapToPair(lp -> new Tuple2<>(lp.label(), lp.features()))).print(); 

私はいくつかのファイル/ DB /キューに結果を入れたいというように代わりprint()のことが可能ですか?

答えて

0

私は、だから我々はresult- {}タイムスタンプの.outフォルダを取得している結果として

StreamingLinearRegressionWithSGD regressionWithSGD = 
       new StreamingLinearRegressionWithSGD() 
         .setInitialWeights(Vectors.zeros(featuresNumber)); 

     JavaDStream<LabeledPoint> trainingData = streamingContext.textFileStream(model.getTrainPath()).map(LabeledPoint::parse).cache(); 
     JavaDStream<LabeledPoint> testData = streamingContext.textFileStream(model.getPredictPath()).map(LabeledPoint::parse); 
     regressionWithSGD.trainOn(trainingData); 
     JavaDStream<Double> doubleJavaDStream=regressionWithSGD.predictOn(testData.map(labeledPoint -> labeledPoint.features())); 
     doubleJavaDStream.dstream().saveAsTextFiles("result","out"); 

それを考え出しました。

関連する問題