Spark Stream 簡單例子
pom.xml
<dependency>
會不斷地列印出類似的結果:
-------------------------------------------
Time: 1490947248000 ms
-------------------------------------------
(Hello,99)
(test,99)
<dependency>
-
<groupId>org.apache.spark</groupId>
-
<artifactId>spark-streaming_2.11</artifactId>
-
<version>2.1.0</version>
- </dependency>
-
import java.io.OutputStream;
-
import java.net.ServerSocket;
-
import java.net.Socket;
-
import java.util.Arrays;
-
import java.util.UUID;
-
-
import org.apache.spark.SparkConf;
-
import org.apache.spark.streaming.Durations;
-
import org.apache.spark.streaming.api.java.JavaDStream;
-
import org.apache.spark.streaming.api.java.JavaPairDStream;
-
import org.apache.spark.streaming.api.java.JavaStreamingContext;
-
-
import scala.Tuple2;
-
-
public class SparkStreamTest {
-
-
public static void main(String[] args) throws Exception {
-
startSockerServer(9999);
-
-
SparkConf conf = new SparkConf().setMaster("local[2]").setAppName("NetworkWordCount");
-
JavaStreamingContext jssc = new JavaStreamingContext(conf, Durations.seconds(1));
-
JavaDStream<String> lines = jssc.socketTextStream("localhost", 9999);
-
-
JavaDStream<String> words = lines.flatMap(x -> Arrays.asList(x.split(" ")).iterator());
-
JavaPairDStream<String, Integer> pairs = words.mapToPair(s -> new Tuple2<>(s, 1));
-
JavaPairDStream<String, Integer> counts = pairs.reduceByKey((x, y) -> x + y);
-
counts.print();
-
-
jssc.start();
-
jssc.awaitTermination();
-
jssc.close();
-
}
-
-
private static void startSockerServer(int port) throws Exception {
-
new Thread(){
-
public void run() {
-
try {
-
ServerSocket server = new ServerSocket(port);
-
Socket socket = server.accept();
-
OutputStream os = socket.getOutputStream();
-
for (int i = 0; i < 1000; i++) {
-
String txt = UUID.randomUUID().toString().replaceAll("-", " ");
-
txt = "Hello test\n";
-
os.write(txt.getBytes());
-
Thread.sleep(10);
-
}
-
socket.close();
-
server.close();
-
} catch (Exception e) {
-
e.printStackTrace();
-
}
-
}
- }.start();
- }
- }
-------------------------------------------
Time: 1490947248000 ms
-------------------------------------------
(Hello,99)
(test,99)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10742815/viewspace-2136411/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Spark SQL 最簡單例子SparkSQL單例
- pycharm下與spark的互動 詳細配置說明以及spark 執行簡單例子PyCharmSpark單例
- Websocket簡單例子Web單例
- JNI 簡單例子單例
- HttpClient 簡單例子HTTPclient單例
- spark stream初探Spark
- XPATH的簡單例子單例
- spark streaming原始碼分析2 從簡單例子看DStream上的operationSpark原始碼單例
- TensorFlow 的簡單例子單例
- spark簡單介紹(一)Spark
- Matplotlib1.簡單例子單例
- web到service簡單原理例子Web
- LRU演算法簡單例子演算法單例
- 尋struts連oracle簡單例子Oracle單例
- Spark 簡單例項(基本操作)Spark單例
- JUnit概述及一個簡單例子單例
- 擼一個簡單的MVVM例子MVVM
- UTL_FILE包的簡單例子單例
- spark與kafaka整合workcount示例 spark-stream-kafkaSparkKafka
- Spark-stream基礎---sparkStreaming和Kafka整合wordCount單詞計數SparkKafka
- 簡單的整合 shiro + SpringMVC 例子SpringMVC
- 一個最簡單的 Github workflow 例子Github
- 一個簡單的觀察者模式例子模式
- 多執行緒 -- 初學簡單例子執行緒單例
- smack和openfire通訊的簡單例子Mac單例
- struts2.01用法的簡單例子單例
- 一個簡單的Ajax請求例子
- Apache CXF 與 Spring 整合簡單例子ApacheSpring單例
- Node.js stream 流的簡單認識Node.js
- Node.js Stream(流) 簡單易懂全解析Node.js
- Spark Streaming簡單入門(示例+原理)Spark
- WebRTC:一個視訊聊天的簡單例子Web單例
- 一個簡單的例子教會您使用javapJava
- 一個簡單的spring-boot例子Springboot
- 一個簡單的例子帶你理解HashmapHashMap
- EBS提交併發請求的簡單例子單例
- Spring定時任務的簡單例子Spring單例
- 一個閉包函式的簡單例子函式單例