spark流式读取hdfs中数据
来源:互联网 发布:sencha architect mac 编辑:程序博客网 时间:2024/04/27 17:53
名词解释:
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()
最后在hdfs上/sdzn_yhhx/tours_details/目录下的文件动态添加数据文件
可在指定hdfs://192.168.200.45:8022/sdzn_yhhx/spark/下查看计算结果
二:流式读取数据方法二
编写计算词频的程序:
val lines = sc.textFile("hdfs://192.168.200.45:8022/sdzn_yhhx/tours_details/")
val words = lines.flatMap(_.split(","))
val pairs = words.map(word => (word, 1))
val wordCounts = pairs.reduceByKey(_ + _)
wordCounts.collect().foreach(println)
wordCounts.stop()
- spark流式读取hdfs中数据
- spark流式读取hdfs中数据
- spark集群从HDFS中读取数据并计算
- Spark在Hadoop的HDFS中读取数据
- spark读取hdfs数据本地性异常
- spark读取hdfs数据本地性异常
- spark中读取hdfs中文件出错
- 读取HDFS 系统中数据
- Spark 读取HDFS文件
- Spark读取HDFS文件
- spark streaming读取HDFS
- spark中读取elasticsearch数据
- spark读取hdfs异常记录
- HDFs数据读取过程
- Spark从s3中读取数据
- 使用mapreduce读取es中数据到hdfs
- hadoop 从mysql中读取数据写到hdfs
- 未完待续 HDFS中使用hadoop url来读取数据
- GDOI2017模拟11.4 总结
- eclipse:自动补全的设置(自动提示)
- Ubuntu安装与配置的常见问题总结
- linux 高级网络编程进阶之rawsocket
- Android输入事件从读取到分发四:InputDispatcherThread发送事件到View结构树的过程
- spark流式读取hdfs中数据
- 自动注释插件JAutodoc
- HTML标签属性说明
- xStream完美转换XML、JSON
- C语言:传引用
- ubuntu 16.04 安装pycharm
- POJ 1973
- iOS简单手势
- 单标行列互转