频道栏目
首页 > 资讯 > 云计算 > 正文

spark流式读取hdfs中数据讲解

17-12-06        来源:[db:作者]  
收藏   我要投稿

名词解释:

spark streaming:

定义:一个对实时数据进行高容通量、容错处理的流式处理系统,可以对多种数据源进行Map、reduce和join等复杂操作,并将结果保存到外部文件系统、数据库活应用到实时仪表盘。

流式数据:像流水一样一点一点流过来流式数据被封装成二进制的流。

流式处理:同样像流水一样一点点处理。如果全部接受数据以后在处理的话会有很大延迟也会消耗大量内存。

计算流程:Sparkstreaming是将流式计算分解成短小的批处理作业。

spark streaming在内部的处理机制是接收实时流的数据,并根据一定的时间间隔拆分成一批批的数据,然后通过spark Engine处理这批数据,最终得到处理后的一批批结果数据。

#spark-shell

scala>

spark:

一:流式读取数据 方法一

import org.apache.spark._

import org.apache.spark.streaming._

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

val ssc = new StreamingContext(sc, Seconds(10))

//读取hdfs上/sdzn_yhhx/tours_details/目录下的文件

val ssc = new StreamingContext(sc, Seconds(2))//Seconds(2)刷新间隔时间

val lines = ssc.textFileStream("hdfs://192.168.200.45:8022/sdzn_yhhx/tours_details/")

val words = lines.flatMap(_.split(","))

val wordCounts = words.map(x => (x, 1)).reduceByKey(_ + _)

wordCounts.print()

wordCounts.saveAsTextFiles("hdfs://192.168.200.45:8022/sdzn_yhhx/spark/")//指定计算结果的存储路径

ssc.start()

ssc.awaitTermination()

相关TAG标签
上一篇:js开发中的时间与日期处理方法
下一篇:自定义滚动条控制大的div滚动(代码教程)
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站