Spark基础:(七)Spark Streaming入门

本文介绍 Spark Streaming 的核心概念和基本用法,包括 DStream 模型及其实现原理。通过一个简单的实时词频统计示例,展示了如何设置 Spark 环境、创建数据流并进行数据处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Spark基础:(七)Spark Streaming入门

 

介绍

1、是spark core的扩展,针对实时数据流处理,具有可扩展、高吞吐量、容错.
数据可以是来自于kafka,flume,tcpsocket,使用高级函数(map reduce filter ,join , windows),
处理的数据可以推送到database,hdfs,针对数据流处理可以应用到机器学习和图计算中。

内部,spark接受实时数据流,分成batch(分批次)进行处理,最终在每个batch终产生结果stream.

2.discretized stream or DStream,
离散流,表示的是连续的数据流。
通过kafka、flume等输入数据流产生,也可以通过对其他DStream进行高阶变换产生。
在内部,DStream是表现为RDD序列。

体验
依赖

<dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-streaming_2.11</artifactId>
            <version>2.1.0</version>
        </dependency>

scalaDeno

import org.apache.spark._
        import org.apache.spark.streaming._
        import org.apache.spark.streaming.StreamingContext._

        object SparkStreamingDemo {
            def main(args: Array[String]): Unit = {
                //local[n] n > 1
                val conf = new SparkConf().setMaster("local[2]").setAppName("NetworkWordCount")
                //创建Spark流上下文,批次时长是1s
                val ssc = new StreamingContext(conf, Seconds(1))

                //创建socket文本流
                val lines = ssc.socketTextStream("localhost", 9999)
                //压扁
                val words = lines.flatMap(_.split(" "))
                //变换成对偶
                val pairs = words.map((_,1));

                val count = pairs.reduceByKey(_+_) ;
                count.print()

                //启动
                ssc.start()

                //等待结束
                ssc.awaitTermination()
            }
        }

1.启动nc服务器
[win7]
cmd>nc -lL -p 9999
2.启动spark Streaming程序

3.在nc的命令行输入单词.
hello world

4.观察spark计算结果。
这里写图片描述

同样的丢到

 

posted @ 2018-08-07 14:09 流氓小伙子 阅读( ...) 评论( ...) 编辑 收藏
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值