Spark Streaming - OrdCount 프로그램
public class WordCount {
public static void main(String[] args) throws Exception {
// SparkConf
// , Master , local
// local , ,
// Spark Streaming
SparkConf conf = new SparkConf()
.setMaster("local[2]")
.setAppName("WordCount");
// JavaStreamingContext
// , Spark Core JavaSparkContext, Spark SQL SQLContext
// SparkConf
// batch interval , , , batch,
//
JavaStreamingContext jssc = new JavaStreamingContext(conf, Durations.seconds(1));
// , DStream, ( kafka、socket)
// JavaStreamingContext socketTextStream() , Socket
// ,JavaReceiverInputStream, DStream
// socketTextStream() , ,
JavaReceiverInputDStream lines = jssc.socketTextStream("localhost", 9999);
// , JavaReceiverInputDStream , , RDD,
//
// RDD String,
// , JavaReceiverInputStream , RDD
// , , Spark Core , DStream
// , DStream RDD, DStream
// RDD, DStream RDD
JavaDStream words = lines.flatMap(new FlatMapFunction() {
private static final long serialVersionUID = 1L;
@Override
public Iterable call(String line) throws Exception {
return Arrays.asList(line.split(" "));
}
});
// , , , ,words DStream RDD
//
// , flatMap、reduceByKey
JavaPairDStream pairs = words.mapToPair(
new PairFunction() {
private static final long serialVersionUID = 1L;
@Override
public Tuple2 call(String word)
throws Exception {
return new Tuple2(word, 1);
}
});
// , , , Spark Streaming , Spark Core
// Spark Core JavaRDD、JavaPairRDD, JavaDStream、JavaPairDStream
JavaPairDStream wordCounts = pairs.reduceByKey(
new Function2() {
private static final long serialVersionUID = 1L;
@Override
public Integer call(Integer v1, Integer v2) throws Exception {
return v1 + v2;
}
});
// , wordcount
// ,
// socket , lines DStream
// lines DStream , , hell world, RDD
// , RDD,
// , lins RDD flatMap , words RDD, words DStream RDD
// , ,wordCounts RDD, wordCounts DStream RDD
// , ,
// , ,Spark Streaming , ,
// redis
// Storm ,storm , ,
// ,
// Spark , , words pairs DStream ,
//
// wordCounts RDD, , DB
// , ,
// 5 ,
Thread.sleep(5000);
wordCounts.print();
// JavaSteamingContext
// JavaStreamingContext start() , Spark Streaming Application
//
jssc.start();
jssc.awaitTermination();
jssc.close();
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Spark Streaming - OrdCount 프로그램텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.