自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Spark入門:Spark Streaming 概覽

大數(shù)據(jù) Spark
Spark Streaming是Spark API的一個(gè)可橫向擴(kuò)容,高吞吐量,容錯(cuò)的實(shí)時(shí)數(shù)據(jù)流處理引擎,Spark能夠從Kafka、Flume、Kinesis或者TCP等等輸入獲取數(shù)據(jù),然后能夠使用復(fù)雜的計(jì)算表達(dá)式如map,reduce,join和window對(duì)數(shù)據(jù)進(jìn)行計(jì)算。

[[199875]]

概覽

Spark Streaming是Spark API的一個(gè)可橫向擴(kuò)容,高吞吐量,容錯(cuò)的實(shí)時(shí)數(shù)據(jù)流處理引擎,Spark能夠從Kafka、Flume、Kinesis或者TCP等等輸入獲取數(shù)據(jù),然后能夠使用復(fù)雜的計(jì)算表達(dá)式如map,reduce,join和window對(duì)數(shù)據(jù)進(jìn)行計(jì)算。計(jì)算完后的數(shù)據(jù)能夠被推送到文件系統(tǒng),數(shù)據(jù)庫(kù),和實(shí)時(shí)的儀表盤。另外,你也可以使用Spark ML和圖計(jì)算處理實(shí)時(shí)數(shù)據(jù)流。

Spark Streaming接受到了實(shí)時(shí)數(shù)據(jù)后,把它們分批進(jìn)行切割,然后再交給Spark進(jìn)行數(shù)據(jù)的批量處理。

Spark Streaming對(duì)離散化的數(shù)據(jù)流提供了高級(jí)別的抽象DStream,所有進(jìn)入的數(shù)據(jù)流都會(huì)被處理為DStreams,在內(nèi)部,DStream是一個(gè)順序排列的RDD。

快速起步

***個(gè)實(shí)例是如何從TCP輸入中計(jì)算單詞出現(xiàn)的次數(shù)

首先,我們創(chuàng)建一個(gè)JavaStreamingContext對(duì)象,它是所有Streaming函數(shù)的主入口,再創(chuàng)建一個(gè)帶有2個(gè)線程的StreamingContext對(duì)象,每1秒進(jìn)行一次批處理。

  1. import org.apache.spark.*; 
  2. import org.apache.spark.api.java.function.*; 
  3. import org.apache.spark.streaming.*; 
  4. import org.apache.spark.streaming.api.java.*; 
  5. import scala.Tuple2; 
  6.  
  7. SparkConf conf = new SparkConf().setMaster("local[2]").setAppName("NetworkWordCount"); 
  8. JavaStreamingContext jssc = new JavaStreamingContext(conf, Durations.seconds(1)); 

創(chuàng)建一個(gè)偵聽本地9999的TCP數(shù)據(jù)源

  1. JavaReceiverInputDStream<String> lines = jssc.socketTextStream("localhost", 9999); 

我們把接受到的數(shù)據(jù)按照空格進(jìn)行切割

  1. JavaDStream<String> words = lines.flatMap(x -> Arrays.asList(x.split(" ")).iterator()); 

對(duì)單詞進(jìn)行統(tǒng)計(jì)

  1. JavaPairDStream<String, Integer> pairs = words.mapToPair(s -> new Tuple2<>(s, 1)); 
  2. JavaPairDStream<String, Integer> wordCounts = pairs.reduceByKey((i1, i2) -> i1 + i2);  
  3. wordCounts.print(); 

把字符串拍扁->映射->進(jìn)行去重統(tǒng)計(jì),***調(diào)用print函數(shù)把數(shù)據(jù)打印到控制臺(tái)中

  1. jssc.start();              // Start the computation 
  2. jssc.awaitTermination();   // Wait for the computation to terminate 

***,啟動(dòng)整個(gè)計(jì)算過(guò)程

為了完成這次實(shí)驗(yàn),還需要使用nc作為Server進(jìn)行配合

  1. nc -lk 9999 

Spark提供了示例,可以使用 ./bin/run-example streaming.JavaNetworkWordCount localhost 9999 來(lái)體驗(yàn)WordCount

責(zé)任編輯:武曉燕 來(lái)源: oschina博客
相關(guān)推薦

2017-06-06 08:31:10

Spark Strea計(jì)算模型監(jiān)控

2017-10-13 10:36:33

SparkSpark-Strea關(guān)系

2016-12-19 14:35:32

Spark Strea原理剖析數(shù)據(jù)

2018-04-09 12:25:11

2016-01-28 10:11:30

Spark StreaSpark大數(shù)據(jù)平臺(tái)

2016-05-11 10:29:54

Spark Strea數(shù)據(jù)清理Spark

2019-10-17 09:25:56

Spark StreaPVUV

2023-10-24 20:32:40

大數(shù)據(jù)

2021-08-20 16:37:42

SparkSpark Strea

2019-12-13 08:25:26

FlinkSpark Strea流數(shù)據(jù)

2017-09-26 09:35:22

2017-10-11 11:10:02

Spark Strea大數(shù)據(jù)流式處理

2021-07-09 10:27:12

SparkStreaming系統(tǒng)

2017-06-27 15:08:05

大數(shù)據(jù)Apache SparKafka Strea

2016-03-03 15:11:42

Spark Strea工作流調(diào)度器

2018-04-18 08:54:28

RDD內(nèi)存Spark

2016-03-02 11:23:34

Spark 1.6.0開源大數(shù)據(jù)技術(shù)

2021-03-15 14:02:21

大數(shù)據(jù)數(shù)據(jù)開發(fā)Spark

2016-08-19 08:50:12

SparkWordCountreduceByKey

2022-06-24 08:00:00

編程工具數(shù)據(jù)結(jié)構(gòu)開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)