spark_shell_cmd文件流、套节字流

1.

Spark Streaming可整合多种输入数据源,如Kafka、Flume、HDFS,甚至是普通的TCP套接字。经处理后的数据可存储至文件系统、数据库,或显示在仪表盘里。

Spark Streaming的基本原理是将实时输入数据流以时间片(秒级)为单位进行拆分,然后经Spark引擎以类似批处理的方式处理每个时间片数据。

Spark Streaming最主要的抽象是DStream(Discretized Stream,离散化数据流),表示连续不断的数据流。在内部实现上,Spark Streaming的输入数据按照时间片(如1秒)分成一段一段,每一段数据转换为Spark中的RDD,这些分段就是Dstream,并且对DStream的操作都最终转变为对相应的RDD的操作:

Spark Streaming和Storm最大的区别在于,Spark Streaming无法实现毫秒级的流计算,而Storm可以实现毫秒级响应。

 

2. spark_shell_cmd实现 文件流:

        spark_shell_cmd实现文件流不会对历史数据进行处理;

打开spark_shell_cmd输入如下代码:

import org.apache.spark.streaming._
val ssc = new StreamingContext(sc, Seconds(15))
val lines =ssc.textFileStream("C:///Users/w'h'n/Desktop/文件流")
val words = lines.flatMap(_.split(""))
val wordCounts = words.map(x => (x,1)).reduceByKey((a,b)=>a+b)
wordCounts.print()
ssc.start()

ssc.awaitTermination()

一旦你输入ssc.start()以后,程序就开始自动进入循环监听状态,屏幕上会显示一堆的信息,如下:

 在“C:///Users/w'h'n/Desktop/文件流”目录下新建几个.txt文件:(可能不会识别到其他新建文件,原因可能是时间设置太长)

        

 就可以在监听窗口中显示词频统计结果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值