0


[Spark、hadoop]spark Streaming的核心DStream

目录


Spark Streaming的核心是DStream

一、DStream简介

1.Spark Streaming提供了一个高级抽象的流,即DStream(离散流)。

2.DStream的内部结构是由一系列连续的RDD组成,每个RDD都是一小段由时间分隔开来的数据集。

二.DStream编程模型

0fe737d0fe51471f86a0a8c85b0fb69b.png

三.DStream转换操作

af73eb7e13394223a84bc68153f85d78.png

transform()

1.在3个节点启动zookeeper集群服务

$ zkServer.sh start

9e4323c2f10640969e8f875570223646.png

2.启动kafka(3个节点都要)

****$ ****/opt/module/kafka/bin/kafka-server-start.sh /opt/module/kafka/config/server.properties

b8fd5e96bd61405d8067e2ae9594e56e.png

3.克隆会话,jps查看是否有Kafka(3个节点)****

6ec2632d396b41d58198dbcc9ea0012d.png

4.进入/etc/resolv.conf加入如下内****

vi resolv.conf

2c4bd758c63a467a953c83136399492a.png

Nameserver 114.114.114.114

b8f0b9c3b0c14976946f77fff32e032f.png

5.下载nc****

$**** yum install nc****

2c6420b111944f5c90515f2fb7a368f1.png

6.启动服务端且监听Socket服务,并输入I**** am learning spark streaming now

$**** nc -lk 9999****

I** am learning spark streaming **now(回车)

7cf1e17894a845d6b14a2dd40b826abe.png

7.创建Maven项目, 打开右上角的Fileànewàproject****

6d7d0118fbe745b7aceccac24cf30aac.png

8.选择mavenànext****

42c8541a4dcb46a487d8de6f175505df.png

9.填写groupld、artifctldànext****

2b64115e0a9740d7baa40983fbdeb613.png

10.添加依赖****

<dependencies>

    <dependency>

        <groupId>org.scala-lang</groupId>

        <artifactId>scala-library</artifactId>

        <version>2.11.8</version>

    </dependency>

    <dependency>

        <groupId>org.apache.spark</groupId>

        <artifactId>spark-core_2.11</artifactId>

        <version>2.0.2</version>

    </dependency>

    <!--引入sparkStreaming依赖-->

    <dependency>

        <groupId>org.apache.spark</groupId>

        <artifactId>spark-streaming_2.11</artifactId>

        <version>2.0.2</version>

    </dependency>

    <dependency>

        <groupId>mysql</groupId>

        <artifactId>mysql-connector-java</artifactId>

        <version>5.1.38</version>

    </dependency>

    <!--引入sparkstreaming整合kafka的依赖-->

    <dependency>

        <groupId>org.apache.spark</groupId>

        <artifactId>spark-streaming-kafka-0-8_2.11</artifactId>

        <version>2.0.2</version>

    </dependency>

</dependencies>

<build>

    <sourceDirectory>src/main/scala</sourceDirectory>

    <testSourceDirectory>src/test/scala</testSourceDirectory>

</build>

2cedff27b968468a9aa19545448498e8.png

*11 在main目录下创建scala文件,右击à*newàdirectory,命名为Scala

8c2930dd412748b4957e5eddeba00d73.png

8f634fab663f48c391483697386ff3c8.png

12 右击Scala文件,选择【Mark Directory**** as】à【sources root】表示将文件夹标记为资源文件夹类型(存放项目源码文件)

decbc50cfd3b41d78c600db52569b489.png

*13 同样在test目录下创建scala文件,右击à*newàdirectory******,命名为Scala ******

a9f60c27b6da403c9aaa10509bc52aef.png

382b070091ce47a1991bc5ce89d9d122.png

14 右击Scala文件,选择【Mark Directory**** as】à【test sources root】表示将文件夹标记为测试资源文件夹类型(存放开发中测试的源码文件)

24bd00986af041fb930661a208f5e55f.png

******15 右击main下的Scala文件先创建一个package并命名为cn.**itcast ****

a9d6d4cde8764a8abc3f6330b9657aa7.png

ff5e514064e24614ba4c2d8ecfe9276f.png

1**6 **编写TransformTest.Scala

注意红框内容!!!

6e2aa4fc76da40f9ad1d6cdb404f919d.png

1**7 **运行程序,可以看到控制台输出结果

e4822f28036e44698bbca68e8a0b8951.png

UpdateStateKey()****

1 编写UpdateStateKeyTest.scala****

注意红框内容!!!

a556fee2ec92475c86cee28e781ac317.png

******2 ********运行程序并在master ********9999 **端口不断输入单词,观察到控制台输出内容

$ nc -lk 9999

Hadoop spark itcast(回车)

Spark itcast

7261189ca5fd45d6ba0afd5a89128d04.png

标签: java kafka 开发语言

本文转载自: https://blog.csdn.net/m0_57781407/article/details/127151246
版权归原作者 发量不足 所有, 如有侵权,请联系我们删除。

“[Spark、hadoop]spark Streaming的核心DStream”的评论:

还没有评论