import org.apache.spark.SparkConf
import org.apache.spark.streaming.{Seconds, StreamingContext} object DStream_file {
def main(args: Array[String]): Unit = {
val sparkConf=new SparkConf().setAppName("wordCount").setMaster("local[4]")
val ss=new StreamingContext(sparkConf,Seconds(15)) //每15秒监听一次sreaming文件夹
val lines=ss.textFileStream("file:///usr/local2/spark/mycode/streaming")
val words=lines.flatMap(_.split(" "))
val wordCounts=words.map(x=>(x,1)).reduceByKey((x,y)=>x+y)
wordCounts.print(100) //打印100组
ss.start()
ss.awaitTerminationOrTimeout(100000) //运行100秒程序自动结束
}
}

结果:

-------------------------------------------
Time: 1508045550000 ms
-------------------------------------------

-------------------------------------------
Time: 1508045565000 ms
-------------------------------------------

-------------------------------------------
Time: 1508045580000 ms
-------------------------------------------
(88,2)
(4,1)
(8,1)
(ya,1)
(55,2)
(me,2)
(49,1)
(i,4)
(9,1)
(but,1)
(1,2)
(dont,1)
(2,2)
(79,1)
(you,4)
(know,2)
(3,2)
(like,2)
(76,1)

-------------------------------------------
Time: 1508045595000 ms
-------------------------------------------

import org.apache.spark.SparkConf
import org.apache.spark.streaming.{Seconds, StreamingContext} /**
* Created by soyo on 17-10-15.
*/
object DStream_file {
def main(args: Array[String]): Unit = {
val sparkConf=new SparkConf().setAppName("wordCount").setMaster("local[2]")
val ss=new StreamingContext(sparkConf,Seconds())
val lines=ss.textFileStream("file:///usr/local2/spark/mycode/streaming")
val words=lines.flatMap(_.split(" "))
val wordCounts=words.map(x=>(x,)).reduceByKey((x,y)=>x+y)
wordCounts.print()
ss.start()
ss.awaitTerminationOrTimeout() //运行秒程序自动结束
} }

IDEA Spark Streaming 操作(文件源)的更多相关文章

  1. IDEA Spark Streaming 操作(套接字流)

    import org.apache.spark.SparkConf import org.apache.spark.streaming.{Seconds, StreamingContext} obje ...

  2. IDEA Spark Streaming 操作(RDD队列流)

    import org.apache.spark.SparkConf import org.apache.spark.rdd.RDD import org.apache.spark.streaming. ...

  3. IDEA Spark Streaming 操作(套接字流)-----make socket数据源

    import java.io.PrintWriter import java.net.ServerSocket import scala.io.Source object DStream_makeSo ...

  4. Spark Streaming源码解读之流数据不断接收全生命周期彻底研究和思考

    本期内容 : 数据接收架构设计模式 数据接收源码彻底研究 一.Spark Streaming数据接收设计模式   Spark Streaming接收数据也相似MVC架构: 1. Mode相当于Rece ...

  5. Spark Streaming源码解读之生成全生命周期彻底研究与思考

    本期内容 : DStream与RDD关系彻底研究 Streaming中RDD的生成彻底研究 问题的提出 : 1. RDD是怎么生成的,依靠什么生成 2.执行时是否与Spark Core上的RDD执行有 ...

  6. Spark Streaming源码解读之Job动态生成和深度思考

    本期内容 : Spark Streaming Job生成深度思考 Spark Streaming Job生成源码解析 Spark Core中的Job就是一个运行的作业,就是具体做的某一件事,这里的JO ...

  7. 贯通Spark Streaming流计算框架的运行源码

    本章节内容: 一.在线动态计算分类最热门商品案例回顾 二.基于案例贯通Spark Streaming的运行源码 先看代码(源码场景:用户.用户的商品.商品的点击量排名,按商品.其点击量排名前三): p ...

  8. 基于案例贯通 Spark Streaming 流计算框架的运行源码

    本期内容 : Spark Streaming+Spark SQL案例展示 基于案例贯穿Spark Streaming的运行源码 一. 案例代码阐述 : 在线动态计算电商中不同类别中最热门的商品排名,例 ...

  9. Dream_Spark-----Spark 定制版:005~贯通Spark Streaming流计算框架的运行源码

    Spark 定制版:005~贯通Spark Streaming流计算框架的运行源码   本讲内容: a. 在线动态计算分类最热门商品案例回顾与演示 b. 基于案例贯通Spark Streaming的运 ...

随机推荐

  1. 字符串、散列--P1598 垂直柱状图

    题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过100个字符),然后用柱状图输出每个字符在输入文件中出现的次数.严格地按照输出样例来安排你的输出格式. 输入输出格式 输入格 ...

  2. ubuntu wsl 子系统使用win10 系统ss代理步骤

    wind10 安装ss客户端 配置server 具体不多说 安装 ubuntu 子系统 3.安装python pip apt install python-pip 4.升级pip pip instal ...

  3. hdu 1754 I Hate It(线段树水题)

    >>点击进入原题测试<< 思路:线段树水题,可以手敲 #include<string> #include<iostream> #include<a ...

  4. [转] angular2+highcharts+chart.js

    这里是在ionic2下使用highchairs和chart.js的简单示例chartjs部分参考http://www.jianshu.com/p/bc18132da812 1.安装hightchart ...

  5. Netty学习总结(4)——图解Netty之Pipeline、channel、Context之间的数据流向

    以下所绘制图形均基于Netty4.0.28版本. 一.connect(outbound类型事件) 当用户调用channel的connect时,会发起一个outbound类型的事件,该事件将在pipel ...

  6. java json数据转List对象的集合-----阿里巴巴插件---及原生json---JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】

    List<RunfastFullLess> list=(List<RunfastFullLess>)JSONArray.parseObject(activity.getFull ...

  7. Android layer-list:联合shape(2)

     Android layer-list:联合shape(2) 附录文章3简单说明了Android layer-list的用法,现在把Android layer-list联合shape做出一些特殊的 ...

  8. 3.1-HDLC/PPP

    同步串行链路(Serail Point-to-Point Link)的封装 3.1-HDLC/PPP     高级数据链路控制HDLC(High-Level Data Link Control):   ...

  9. namenode启动成功,但是不能通过web访问50070问题

    我在CentOS遇到这个问题,50070不行但8088可以,尝试了各种方法无法解决,各个进程全都启动,格式化namenode,各种配置正常均无法解决.后来觉得是默认访问端口没有生效,所以尝试添加端口配 ...

  10. [Vue-rx] Stream an API using RxJS into a Vue.js Template

    You can map remote data directly into your Vue.js templates using RxJS. This lesson uses axios (and ...